函数numpy.in1d似乎可以满足您的要求。唯一的问题是它仅适用于一维数组,因此您应该像这样使用它:
In [9]: np.in1d(fake, [0,2,6,8]).reshape(fake.shape)Out[9]: array([[ True, False, True], [False, False, False], [ True, False, True]], dtype=bool)
我不知道为什么这仅限于一维数组。看一下它的源代码,它似乎首先将两个数组展平,然后再执行一些巧妙的排序技巧。但是没有什么能阻止它再次使结果变得平平,就像我在这里不得不手工做的那样。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)