📜  numpy 计算数组中 1 的数量 - Python (1)

📅  最后修改于: 2023-12-03 15:33:14.694000             🧑  作者: Mango

Numpy 计算数组中 1 的数量 - Python

在使用 Python 和 Numpy 进行数组计算时,经常需要统计数组中某个特定值的数量。本文将介绍使用 Numpy 统计数组中 1 的数量的方法。

1. 使用 np.count_nonzero 函数

np.count_nonzero 函数用来计算数组中非零元素的数量。由于 1 是数组中的非零值,因此可以使用该函数来计算数组中 1 的数量。

import numpy as np

arr = np.array([1, 0, 1, 1, 0, 0, 1])
count = np.count_nonzero(arr == 1)

print(count) # 输出结果为:4

代码解释:

首先导入 Numpy 库,然后创建一个数组。接着使用 arr == 1 来选择数组中值为 1 的元素,并将结果传递给 np.count_nonzero 函数。最后,将结果打印出来。

2. 使用 np.sum 函数

np.sum 函数可以用来计算数组中所有元素的总和。由于在 Python 中,布尔值可以被视为整数类型,因此可以使用该函数来计算数组中布尔值为 true 的元素的数量。

import numpy as np

arr = np.array([1, 0, 1, 1, 0, 0, 1])
count = np.sum(arr == 1)

print(count) # 输出结果为:4

代码解释:

首先导入 Numpy 库,然后创建一个数组。然后,使用 arr == 1 来选择数组中值为 1 的元素,并将结果作为布尔数组传递给 np.sum 函数。由于 True 等价于 1,因此 np.sum 函数将对 True 值的数量求和并返回结果。

3. 总结

使用上述方法,可以快速、简便地计算数组中 1 的数量。如果有多个数组需要计算,可以使用循环来处理每个数组,或者将数组组合成一个更大的数组并使用 np.sum 或 np.count_nonzero 函数来计算整个数组中 1 的数量。