加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

如何在Python中获取原始列表的排序列表的索引?

发布时间:2020-12-20 11:40:49 所属栏目:Python 来源:网络整理
导读:numpy的argsort函数返回排序列表的原始索引. 现在我想要原始列表的排序列表的索引.在那儿 一个功能或优雅的方式来做到这一点? 例如: import numpy as np a = np.array([2,8,5,6]) np.argsort(a)array([0,2,3,1]) function(a)array([0,1,2]) 解决方法 你总
numpy的argsort函数返回排序列表的原始索引.
现在我想要原始列表的排序列表的索引.在那儿
一个功能或优雅的方式来做到这一点?

例如:

>>> import numpy as np
>>> a = np.array([2,8,5,6])
>>> np.argsort(a)
array([0,2,3,1])
>>> function(a)
array([0,1,2])

解决方法

你总是可以两次调用argsort:

>>> a.argsort().argsort()
array([0,2])

据我所知,NumPy中没有“双argsort”功能,但将argsort两次应用于数组是计算值排名的常用方法(参见here).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读