检查两个numpy数组中相等的元素数量
我有两个长度相同的numpy数组,里面都是数字。我想统计这两个数组中有多少个元素是相同的(相同的意思是值和位置都一样)。
A = [1, 2, 3, 4]
B = [1, 2, 4, 3]
然后我希望返回的结果是2(因为只有1和2在位置和数值上是相等的)。
2 个回答
32
只要这两个数组的长度是一样的,你就可以用下面的方式来实现:
np.count_nonzero(A==B)
121
使用 numpy.sum
:
>>> import numpy as np
>>> a = np.array([1, 2, 3, 4])
>>> b = np.array([1, 2, 4, 3])
>>> np.sum(a == b)
2
>>> (a == b).sum()
2