Python 如何计算numpy数组中指定阈值附近的对象数
如何获得二维numpy数组中每行大于阈值的所有数字的计数 例如,如果我的阈值为4,而这个数组Python 如何计算numpy数组中指定阈值附近的对象数,python,numpy,scipy,Python,Numpy,Scipy,如何获得二维numpy数组中每行大于阈值的所有数字的计数 例如,如果我的阈值为4,而这个数组 [[1, 2, 3, 4, 5], [1, 2, 3, 8, 9], [1, 2, 3, 5, 5]] 我想要这个输出 [1, 2, 2] 我可以反复讨论这个问题,但我猜numpy有一种更有效的方法。谢谢。这很简单:.sum(1)逐行计算总和x>4是一个布尔数组。当计算sum时,True为1,False为0 In [173]: x = np.array([[1, 2, 3, 4, 5],
[[1, 2, 3, 4, 5],
[1, 2, 3, 8, 9],
[1, 2, 3, 5, 5]]
我想要这个输出
[1, 2, 2]
我可以反复讨论这个问题,但我猜numpy有一种更有效的方法。谢谢。这很简单:
.sum(1)
逐行计算总和x>4
是一个布尔数组。当计算sum
时,True
为1
,False
为0
In [173]:
x = np.array([[1, 2, 3, 4, 5],
[1, 2, 3, 8, 9],
[1, 2, 3, 5, 5]])
In [174]:
(x>4).sum(1)
Out[174]:
array([1, 2, 2])
In [175]:
x>4
Out[175]:
array([[False, False, False, False, True],
[False, False, False, True, True],
[False, False, False, True, True]], dtype=bool)
这是可行的,但我不明白为什么。(x>4)是面具吗?如果是。。。如何对掩码求和?不,
(x>4)
是一个布尔数组。