numpy.count_nonzero#
- numpy.count_nonzero(a, axis=None, *, keepdims=False)[源代码]#
计算数组
a中非零值的数量.“非零”一词指的是 Python 2.x 内置方法
__nonzero__()(在 Python 3.x 中重命名为__bool__()),该方法用于测试对象的“真值”.例如,如果任何数字非零,则认为它是真值,而如果任何字符串不是空字符串,则认为它是真值.因此,此函数(递归地)计算a(及其子数组中)有多少元素的__nonzero__()或__bool__()方法的计算结果为True.- 参数:
- aarray_like
用于计算非零值的数组.
- axisint 或 tuple,可选
用于沿其计算非零值的轴或轴元组. 默认为 None,表示将沿
a的扁平化版本计算非零值.- keepdimsbool, 可选
如果设置为 True,则计数的轴将保留在结果中,作为大小为 1 的维度. 使用此选项,结果将正确地与输入数组进行广播.
- 返回:
- 计数int 或 int 数组
数组中沿给定轴的非零值的数量. 否则,将返回数组中非零值的总数.
参见
nonzero返回所有非零值的坐标.
示例
>>> import numpy as np >>> 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]])