python - 相当于 'in' 用于比较两个 Numpy 数组

标签 python numpy

我可以使用纯的、未向量化的 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/

相关文章:

python - multiprocessing.Pipe 比 multiprocessing.Queue 还要慢?

python - 方法 .as_matrix 将在未来版本中删除。使用 .values 代替

python - 这个 import_umath 函数是什么?

python - numpy.polyfit : How to get 1-sigma uncertainty around the estimated curve?

python - 有没有办法使用plotly在python中创建范围图?

python - 解析 CS :GO language file with encoding in Python

python - 如何使用 matplotlib/seaborn 和 pandas 数据框创建具有共享 x 轴的倒置条形图

numpy:使用一维数组作为二维数组索引的有效方法

python - 如何为每列使用不同的默认值初始化 NumPy 数组?

python - Python中的快速互相关方法