Python numpy.count_nonzero函数方法的使用

NumPy(Numerical Python的缩写)是一个开源的Python科学计算库。使用NumPy,就可以很自然地使用数组和矩阵。NumPy包含很多实用的数学函数,涵盖线性代数运算、傅里叶变换和随机数生成等功能。本文主要介绍一下NumPy中count_nonzero方法的使用。

numpy.count_nonzero

numpy.count_nonzero(a, axis=None, *, keepdims=False)     [source]

计算数组a中非零值的数量。

“non-zero”一词是指Python 2.x内置方法__nonzero__()(重命名为__bool__()。 例如,如果任何数字非零,则将其视为真实,而如果其不是空字符串,则将其视为真实。 因此,此函数(递归)计算a(及其子数组)中有多少个元素具__nonzero__()__bool__()方法计算为True

参数 :

a :array_like

要为其计数非零的数组。

axisinttuple, 可选

用于计算非零值的轴或轴元组。 默认值为None

这意味着非零将沿a的a展平版本计算。 

1.12.0版中的新功能。

keepdimsbool, 可选

如果将其设置为True,

则计算的轴将在结果中保留为尺寸为1的维度。

使用此选项,结果将针对输入数组正确传递。

返回值 :

count :int 或 int类型的array

沿给定轴的数组中非零值的个数。否则,返回数组中非零值的总数。

例子

>>> np.count_nonzero(np.eye(4))
4
>>> a = np.array([[0, 1, 7, 0],
...               [3, 0, 2, 19]])
>>> np.count_nonzero(a)
5
>>> np.count_nonzero(a, axis=0)
array([1, 1, 2, 1])
>>> np.count_nonzero(a, axis=1)
array([2, 3])
>>> np.count_nonzero(a, axis=1, keepdims=True)
array([[2],
       [3]])
推荐阅读
cjavapy编程之路首页