【发布时间】:2019-06-28 18:28:43
【问题描述】:
在 numpy 中,我如何有效地恢复排序算法对向量应用的排列,以便在结果向量中的每个索引处,我都有一个整数表示原始向量中的项目在应用程序后投影到的索引排序算法。
>>>import numpy as np
>>> my_vector = np.random.random_integers(1,50,size=5)
>>> my_vector
array([23, 20, 33, 38, 27])
>>> my_v_sorted = np.sort(my_vector)
>>> my_v_sorted
array([20, 23, 27, 33, 38])
>>> what_i_want = np.array([1,0,4,2,3])
无论我是否真的需要排序来执行此操作,我只想将向量的条目映射到排序向量中的结果索引,干杯!
【问题讨论】:
-
你看过
numpy.argsort吗? -
what_i_want = np.array([1,0,4,5,3])里面应该有2吗?没有5? -
查看argsort的argsort。
标签: python numpy sorting permutation