Python 查找满足条件的numpy数组元素
我有一个numpy数组,我想找到满足条件的元素 代码如下:Python 查找满足条件的numpy数组元素,python,numpy,Python,Numpy,我有一个numpy数组,我想找到满足条件的元素 代码如下: import numpy as np a = np.array([[1, 2], [1, 3], [1, 2]]) b = np.array([1, 2]) c = (a == b) 结果是 [[ True True] [ True False] [ True True]] 但我想要的是[True,False,True]或索引[0,2] 虽然我可以通过列表理解来实现这一点,比如 c = [all(b==x) for x in
import numpy as np
a = np.array([[1, 2], [1, 3], [1, 2]])
b = np.array([1, 2])
c = (a == b)
结果是
[[ True True]
[ True False]
[ True True]]
但我想要的是[True,False,True]或索引[0,2]
虽然我可以通过列表理解来实现这一点,比如
c = [all(b==x) for x in a]
但我想在未来的3d矩阵中找到这个元素,比如
a = np.array([[[1, 2], [1, 3], [1, 2]],
[[7, 2], [1, 2], [4, 2]]])
我希望索引像[[0,0],[0,2],[1,1]]
我应该如何通过numpy实现这一点?使用轴如何
代码:
测试代码:
结果:
它也适用于3D矩阵,非常感谢
np.all(a == b, axis=1)
a = np.array([[1, 2], [1, 3], [1, 2]])
b = np.array([1, 2])
c = np.all(a == b, axis=1)
print(c)
[ True False True]