idtopick
是一个 id 数组
idtopick=array([50,48,12,125,3458,155,299,6,7,84,58,63,0,8,-1])
idtolook
是另一个包含我感兴趣的 id 的数组
idtolook=array([0,8,12,50])
我想将idtopick
对应的位置存储在另一个数组中idtolook
。
这是我的解决方案
positions=array([where(idtopick==dummy)[0][0] for dummy in idtolook])
导致
array([12, 13, 2, 0])
它有效,但实际上我正在使用的数组存储数百万个点,因此上述脚本相当慢。我想知道是否有办法让它更快。另外,我想保持顺序,idtolook
因此任何可以对其进行排序的算法都不适用于我的情况。