我想知道是否有一种有效的方法来执行以下操作。我有两个(numpy)数组,我想根据另一个数组的条件计算一个值的实例数。例如:
a = np.array([1,-1,1,1,-1,-1])
b = np.array([.75,.35,.7,.8,.2,.6])
我想将c
计算为a
>时出现的b
中的1的数量。 .5,所以在这种情况下`c = 3'。我目前的解决方案是丑陋的,并希望得到任何建议。
答案 0 :(得分:1)
您可以使用print_r
:
numpy.sum
这是有效的,因为a = np.array([1,-1,1,1,-1,-1])
b = np.array([.75,.35,.7,.8,.2,.6])
np.sum((a == 1) & (b > .5)) # 3
是bool
的子类。
答案 1 :(得分:0)
如果只有一个条件,请尝试:
np.count_nonzero((a == 1) & (b > .5))