如何获取numpy array前N个最大值


Posted in Python onMay 14, 2021

主要应用了argsort()函数,函数原型:

numpy.argsort(a, axis=-1, kind='quicksort', order=None)
'''
Returns the indices that would sort an array.
Perform an indirect sort along the given axis using the algorithm specified by the kind keyword. It returns an array of indices of the same shape as a that index data along the given axis in sorted order.
'''
Parameters: 
a : array_like
Array to sort.
 
axis : int or None, optional
Axis along which to sort. The default is -1 (the last axis). If None, the flattened array is used.
 
kind : {‘quicksort', ‘mergesort', ‘heapsort', ‘stable'}, optional
Sorting algorithm.
 
order : str or list of str, optional
When a is an array with fields defined, this argument specifies which fields to compare first, second, etc. A single field can be specified as a string, and not all fields need be specified, but unspecified fields will still be used, in the order in which they come up in the dtype, to break ties.
 
Returns: 
index_array : ndarray, int
Array of indices that sort a along the specified axis. If a is one-dimensional, a[index_array] yields a sorted a. More generally, np.take_along_axis(a, index_array, axis=a) always yields the sorted a, irrespective of dimensionality.

示例:

import numpy as np
top_k=3
arr = np.array([1, 3, 2, 4, 5])
top_k_idx=arr.argsort()[::-1][0:top_k]
print(top_k_idx)
#[4 3 1]

补充:python topN / topK 取 最大的N个数 或 最小的N个数

import numpy as np
a = np.array([1,4,3,5,2])
b = np.argsort(a)
print(b)

print结果[0 4 2 1 3]

说明a[0]最小,a[3]最大

a[0]<a[4]<a[2]<a[1]<a[3]

补充:利用Python获取数组或列表中最大的N个数及其索引

看代码吧~

import heapq
 
a=[43,5,65,4,5,8,87]
re1 = heapq.nlargest(3, a) #求最大的三个元素,并排序
re2 = map(a.index, heapq.nlargest(3, a)) #求最大的三个索引    nsmallest与nlargest相反,求最小
print(re1)
print(list(re2)) #因为re2由map()生成的不是list,直接print不出来,添加list()就行了

结果:

re1:[87, 65, 43]

re2:[6, 2, 0]

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python基础教程之获取本机ip数据包示例
Feb 10 Python
利用Python为iOS10生成图标和截屏
Sep 24 Python
Python构建网页爬虫原理分析
Dec 19 Python
对python中的for循环和range内置函数详解
Apr 17 Python
python 美化输出信息的实例
Oct 15 Python
解决pytorch GPU 计算过程中出现内存耗尽的问题
Aug 19 Python
python中struct模块之字节型数据的处理方法
Aug 27 Python
Python开发之基于模板匹配的信用卡数字识别功能
Jan 13 Python
Python3 assert断言实现原理解析
Mar 02 Python
python 实现仿微信聊天时间格式化显示的代码
Apr 17 Python
Django DRF认证组件流程实现原理详解
Aug 17 Python
python使用matplotlib绘制折线图的示例代码
Sep 22 Python
使用pandas模块实现数据的标准化操作
pandas 实现将NaN转换为None
May 14 #Python
Pandas||过滤缺失数据||pd.dropna()函数的用法说明
Python爬虫:从m3u8文件里提取小视频的正确操作
MATLAB 全景图切割及盒图显示的实现步骤
使用pandas或numpy处理数据中的空值(np.isnan()/pd.isnull())
May 14 #Python
PyQt5爬取12306车票信息程序的实现
You might like
乱谈我对耳机、音箱的感受
2021/03/02 无线电
php+dojo 的数据库保存拖动布局的一个方法dojo 这里下载
2007/03/07 PHP
关于初学PHP时的知识积累总结
2013/06/07 PHP
memcache一致性hash的php实现方法
2015/03/05 PHP
JavaScript的Function详细
2006/11/14 Javascript
jQuery.autocomplete 支持中文输入(firefox)修正方法
2011/03/10 Javascript
javascript椭圆旋转相册实现代码
2012/01/16 Javascript
javascript实现TreeView 无刷新展开的实例代码
2013/07/13 Javascript
纯css+js写的一个简单的tab标签页带样式
2014/01/28 Javascript
ExtJS4 动态生成的grid导出为excel示例
2014/05/02 Javascript
javascript包装对象实例分析
2015/03/27 Javascript
javascript笛卡尔积算法实现方法
2015/04/08 Javascript
jQuery+html5实现div弹出层并遮罩背景
2015/04/15 Javascript
JavaScript中String.match()方法的使用详解
2015/06/06 Javascript
从零开始学习Node.js系列教程三:图片上传和显示方法示例
2017/04/13 Javascript
fullPage.js和CSS3实现全屏滚动效果
2017/05/05 Javascript
解决jquery的ajax调取后端数据成功却渲染失败的问题
2018/08/08 jQuery
微信小程序首页的分类功能和搜索功能的实现思路及代码详解
2018/09/11 Javascript
小程序实现列表多个批量倒计时
2021/01/29 Javascript
解决包含在label标签下的checkbox在ie8及以下版本点击事件无效果兼容的问题
2019/10/27 Javascript
Vue + Node.js + MongoDB图片上传组件实现图片预览和删除功能详解
2020/04/29 Javascript
python安装twisted的问题解析
2018/08/21 Python
Python多进程池 multiprocessing Pool用法示例
2018/09/07 Python
python 实现对文件夹中的图像连续重命名方法
2018/10/25 Python
对Python 3.5拼接列表的新语法详解
2018/11/08 Python
Python+OpenCV感兴趣区域ROI提取方法
2019/01/10 Python
PyQt Qt Designer工具的布局管理详解
2019/08/07 Python
html5唤醒APP小记
2019/03/27 HTML / CSS
Mytheresa英国官网:拥有160多个奢侈品品牌
2016/10/09 全球购物
巴西图书和电子产品购物网站:Saraiva
2017/06/07 全球购物
金融学专科生自我鉴定
2014/02/21 职场文书
2014年医院十一国庆节活动方案
2014/09/15 职场文书
新教师个人总结
2015/02/06 职场文书
感恩教育观后感
2015/06/17 职场文书
Redis调用Lua脚本及使用场景快速掌握
2022/03/16 Redis
Linux中各个目录的作用与内容
2022/06/28 Servers