我正在尝试找到在另一个数组中获取嵌套数组索引的最有效方法。
import numpy as np
# 0 1 2 3
haystack = np.array([[1,3],[3,4,],[5,6],[7,8]])
needles = np.array([[3,4],[7,8]])
给定包含在needles
中的数组,我想要找到它们在haystack
中的索引。在这种情况下是1,3。
我想出了以下解决方案:
indexes = [idx for idx,elem in enumerate(haystack) if elem in needles ]
这是错误的,因为实际上只需要在elem
中有一个元素在needles
中即可返回idx
。
是否有更快的替代方案?