说我有两个数组,大小相同,没有重复,在阵列1的每个项目在数组2:创建索引图两个数组
arr1 = np.array([100,200,50,150])
arr2 = np.array([150,200,100,50])
什么是找到索引图INDS这样,最好的办法arr2 [inds]返回arr1?
我目前的解决方案的工作,但我不知道是否有更多的东西numpyish这将是更有效的大型阵列:
ind21 = map(lambda x:np.abs(x-arr2).argmin(),arr1)
In [57]: arr1,arr2[ind21]
Out[57]: (array([100, 200, 50, 150]), array([100, 200, 50, 150]))
可爱的发现一个,必须相当有效!对于2D案例非常相似的情况导致我使用'argsort'作为另一个解决方案 - http://stackoverflow.com/a/36536068/3293881 – Divakar