Python:NumPy排序数组

Python:NumPy排序数组,python,arrays,numpy,sorting,Python,Arrays,Numpy,Sorting,我目前正在尝试对numpy数组进行排序,但遇到了一个困难 我要排序的数组如下所示: mat = np.array([0.05170475 0.07367926 0.05741241 0.34870369 0.19990381 0.26859608]) 现在这里最困难的部分是,我想对数组进行排序,但同时还要保留索引 例如,如果不使用numpy,我会使用 mat = list(enumerate(mat)) # gives [(0, 0.05170474575702143), (1, 0.0

我目前正在尝试对numpy数组进行排序,但遇到了一个困难

我要排序的数组如下所示:

mat = np.array([0.05170475 0.07367926 0.05741241 0.34870369 0.19990381 0.26859608])
现在这里最困难的部分是,我想对数组进行排序,但同时还要保留索引

例如,如果不使用
numpy
,我会使用

mat = list(enumerate(mat))    # gives [(0, 0.05170474575702143), (1, 0.07367926270375554), (2, 0.05741241249643288), (3, 0.3487036852148175), (4, 0.19990381197331886), (5, 0.2685960818546567)]
mat.sort(reverse = True, key = lambda ×: ×[1])    # gives [(3, 0.3487036852148175), (5, 0.2685960818546567), (4, 0.19990381197331886), (1, 0.07367926270375554), (2, 0.05741241249643288), (0, 0.05170474575702143)]
然而,由于我使用的是
numpy
,我想知道是否有一个numpy函数可以完成所有这些。我能够使用
np.sort
np.argsort
分别对索引和值进行排序,但我不能同时进行这两项工作…

index=np.argsort(mat)[:::-1]
np.hstack((索引[:,np.newaxis],mat[索引][:,np.newaxis]))

您可以压缩
np.sort
np.argsort
together@Pygirl伟大的是否有一种按降序排序的方法,有点像
reverse=True
。现在我正在使用
np.flip
,但我想知道是否有一种方法可以告诉numpy按降序排序?
array([[3.        , 0.34870369],
       [5.        , 0.26859608],
       [4.        , 0.19990381],
       [1.        , 0.07367926],
       [2.        , 0.05741241],
       [0.        , 0.05170475]])