概述
python中原生的sort()方法直接对列表进行排序,并不返回索引,例如:
a = [9, 3, 6, 0]
a.sort()
print(a)
输出:
[0, 3, 6, 9]
如果想返回索引可以使用numpy.argsort()方法
import numpy as np
x = np.array([3, 1, 2])
idx = np.argsort(x)
print(idx)
# get data by sort index
a = x[np.argsort(x)]
print(a)
输出:
array([1, 2, 0])
array([1, 2, 3])
这个方法也可以用于高维数组,例如二维
x = np.array([[0, 3], [2, 2]])
x
np.argsort(x, axis=0) #按列排序
np.argsort(x, axis=1) #按行排序
输出:
array([[0, 3],
[2, 2]])array([[0, 1],
[1, 0]])array([[0, 1],
[0, 1]])
参考:python 序列排序 排序后返回相应的索引_Python 学习者的博客-CSDN博客_python排序返回索引
最后
以上就是无奈大叔为你收集整理的python使用numpy进行排序后返回相应的索引的全部内容,希望文章能够帮你解决python使用numpy进行排序后返回相应的索引所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复