我可以使用纯的、未向量化的 Python,
>>> a = 9
>>> b = [5, 7, 12]
>>> a in b
False
我想在 Numpy 中对数组做类似的事情,即
>>> a = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
>>> b = np.array([5, 7, 12])
>>> a in b
np.array([False, False, False, False, True, False, True, False, False, False])
...虽然这行不通。
是否有实现此目的的功能或方法?如果不是,最简单的方法是什么?
最佳答案
您正在寻找in1d :
>>> import numpy as np
>>> a = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
>>> b = np.array([5, 7, 12])
>>> np.in1d( a, b)
array([False, False, False, False, True, False, True, False, False, False], dtype=bool)
关于python - 相当于 'in' 用于比较两个 Numpy 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4313986/