在两个numpy数组中查找匹配行的索引

3
如何在两个numpy数组之间找到完全匹配的行的索引。例如:
x = np.array(([0,1],
              [1,0],
              [0,0]))
y = np.array(([0,1],
              [1,1],
              [0,0]))

这里需要返回的是:

这应该返回:

matches = [0,2] # Match at row no 0 and 2
2个回答

5
np.flatnonzero((x == y).all(1))
# array([0, 2])

或者:

np.nonzero((x == y).all(1))[0]

或者:

np.where((x == y).all(1))[0]

0

如果长度相同,这适用于每对numpy数组:

matches = [i for i in range(len(x)) if x[i].tolist()==y[i].tolist()]

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接