Python | 快速获取某一列数组中前 N 个最大值/最小值的索引 | 三种方法总结

Posted 叶庭云

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python | 快速获取某一列数组中前 N 个最大值/最小值的索引 | 三种方法总结相关的知识,希望对你有一定的参考价值。

CSDN 叶庭云https://yetingyun.blog.csdn.net/


NumPy 提出了一种通过 np.argmax/np.argmin 获取数组最大值/最小值索引的方法。

但如果想要的是返回 N 个最大值的索引呢?例如,我有一个数组 [1, 4, 5, 3, 2, 8, 6],那么 nargmax(array, n=3) 将返回与元素 [8, 6, 5] 相对应的索引 [5, 6, 2],nargmin(array, n=3) 将返回与元素 [1, 2, 3] 相对应的索引 [0, 4, 3]。

Python 实践如下所示:

def get_topk_index(arr, k=3):
    topk_index = heapq.nsmal

以上是关于Python | 快速获取某一列数组中前 N 个最大值/最小值的索引 | 三种方法总结的主要内容,如果未能解决你的问题,请参考以下文章

利用快速排序原理找出数组中前n大的数

获取二维数组中某一列的最小值

11.前缀和

获取二维 numpy ndarray 或 numpy 矩阵中前 N 个值的索引

获取pandas数据框中每一列的前k个元素的索引的快速方法

python中如何取一列数最大值