python - 检查数组 A 中的元素是否属于数组 B
问题描述
我想以有效的方式检查大数组 A 中的整数是否属于较小的数组 B。我目前使用 for 循环来执行此操作,这对于大型 A 和 B 来说太慢了。
关于如何以更有效的方式做到这一点的任何建议?
当前代码:
import numpy as np
A=np.arange(10)
B=np.array([0,1,9])
isIn=np.zeros_like(A,dtype=bool)
for i in np.unique(B):
isIn[A==i]=True
print(isIn)
[ True True False False False False False False False True]
解决方案
你有np.in1d
这个:
np.in1d(A, B)
# array([ True, True, False, False, False, False, False, False, False, True])
推荐阅读
- haskell - Haskel:: 构造一个类型的实例是否需要括号?
- android - Android ConstraintLayout ScrollView 不滚动
- python - 用嵌套的 for 循环填充字典
- android - 对于熟悉在 Google Play 上发布应用程序的人,我有一个关于应用程序兼容性的问题?
- python - Scapy:如何检查使用 srp1(使用第 2 层)的 ping 是否成功
- python - 如何捕获将值重新分配给全局变量的动作
- apache-spark - 从分布式文件系统中读取火花?
- flutter - 水平居中图像并垂直重复
- php - 如何检查功能是否在后台执行?
- javascript - 如何使用正则表达式检查大写或小写字母