计算NumPy数组中非NaN元素的数量
在这篇文章中,我们将看到如何用Python计算NumPy数组中非NaN元素的数量。
NAN:当你不关心该位置的值是什么时,就会使用它。也许有时会被用来代替缺失的数据,或损坏的数据。
方法1:使用条件
在这个例子中,我们将使用一维数组。在下面给出的代码中,我们在给定的NumPy数组的每个条目上循环,并检查该值是否为NaN。
输出:
方法2:使用isan()
利用NumPy数组的功能,我们可以一次对整个数组进行操作,而不是单个元素。
使用到的函数:
- np.isan(data)。对数组中的条目data进行np.isan()操作后返回一个布尔数组。
- np.sum()。由于我们向sum函数输入的是一个布尔数组,所以它返回布尔数组中真值(1)的数量。
输出:
方法3:使用np.count_nonzero()函数
numpy.count_nonzero()函数计算数组arr中非零值的数量。
语法: numpy.count_nonzero(arr, axis=None)
参数 :
arr : [array_like] 用于计算非零的数组。
axis : [int or tuple, optional] 用于计算非零点的轴或轴的元组。默认为无,意味着非零点将沿着Arr的一个扁平化版本进行计数。
返回 : [int or array of int] 数组中沿给定轴的非零值的数量。否则,将返回数组中非零值的总数。
输出: