Numpy 如何计算python中三个数组中有多少元素等于数组之间相同位置的某个值?

Numpy 如何计算python中三个数组中有多少元素等于数组之间相同位置的某个值?,numpy,Numpy,我有三个numpy阵列 a = [0, 1, 2, 3, 4] b = [5, 1, 7, 3, 9] c = [10, 1, 3, 3, 1] 我想计算a,b,c中有多少元素在同一位置等于3,所以这个例子是3。一个优雅的解决方案是使用Numpy函数,比如: np.count_nonzero(np.vstack([a, b, c])==3, axis=0).max() 详情: np.vstack([a,b,c])生成一个包含3行的数组,其中包含 3个源阵列 np.count\u非零(…==

我有三个numpy阵列

a = [0, 1, 2, 3, 4]
b = [5, 1, 7, 3, 9]
c = [10, 1, 3, 3, 1]

我想计算a,b,c中有多少元素在同一位置等于3,所以这个例子是3。

一个优雅的解决方案是使用Numpy函数,比如:

np.count_nonzero(np.vstack([a, b, c])==3, axis=0).max()
详情:

  • np.vstack([a,b,c])
    生成一个包含3行的数组,其中包含 3个源阵列
  • np.count\u非零(…==3,轴=0)
    -计算出现了多少个3的值 在每列中。对于您的数据,结果是
    数组([0,0,1,3,0],dtype=int64)
  • max()