python如何获得list或numpy数组中最大元素对应的索引


Posted in Python onNovember 16, 2020

获得list中最大元素的索引

aa = [1,2,3,4,5]
aa.index(max(aa))

相应的最小值使用

aa = [1,2,3,4,5]
aa.index(min(aa))

获得numpy数组中最大元素的索引

1.可以使用numpy的函数,argmax获得最大元素的索引,相应的获得最小值的话需要使用argmin。

aa = [1,2,3,4,5]
arr_aa = np.array(aa)
maxindex = np.argmax(arr_aa )

1.也可以将numpy转为list,然后使用list或者最大值索引的方法获得最大值。

aa = numpy.array([1,2,3,4,5])

先把aa转换为List,再求索引:

bb = aa.tolist()
bb.index(max(bb))

1.python 比较灵活,所以还可以有其他的方法,如使用where函数。
 首先我们可以得到array在全局和每行每列的最大值(最小值同理)

>>> a = np.arange(9).reshape((3,3))
>>> a
array([[0, 1, 2],
    [3, 4, 5],
    [6, 7, 8]])
>>> print(np.max(a))    #全局最大
8
>>> print(np.max(a,axis=0)) #每列最大
[6 7 8]
>>> print(np.max(a,axis=1)) #每行最大
[2 5 8]

然后用where得到最大值的索引,返回值中,前面的array对应行数,后者对应列数

>>> print(np.where(a==np.max(a)))
(array([2], dtype=int64), array([2], dtype=int64)) #表示最大值在第二行第二列
>>> print(np.where(a==np.max(a,axis=0)))
(array([2, 2, 2], dtype=int64), array([0, 1, 2], dtype=int64)) # 表示最大值分别在第二行第零列,第二行第一列,第二行第二列

如果array中有相同的最大值,where会将其位置全部给出

>>> a[1,0]=8
>>> a
array([[0, 1, 2],
    [8, 4, 5],
    [6, 7, 8]])
>>> print(np.where(a==np.max(a)))
(array([1, 2], dtype=int64), array([0, 2], dtype=int64))

参考文章
1.python 寻找list中最大元素对应的索引
2.python中找出numpy array数组的最值及其索引

到此这篇关于python如何获得list或numpy数组中最大元素对应的索引的文章就介绍到这了,更多相关python 获得list或numpy最大元素索引内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python使用urllib2提交http post请求的方法
May 26 Python
python实现井字棋游戏
Mar 30 Python
Python内置函数——__import__ 的使用方法
Nov 24 Python
pandas全表查询定位某个值所在行列的方法
Apr 12 Python
python 读取文件并替换字段的实例
Jul 12 Python
Python实现手写一个类似django的web框架示例
Jul 20 Python
Python GUI布局尺寸适配方法
Oct 11 Python
为什么Python中没有"a++"这种写法
Nov 27 Python
python中 * 的用法详解
Jul 10 Python
django连接mysql数据库及建表操作实例详解
Dec 10 Python
Keras 利用sklearn的ROC-AUC建立评价函数详解
Jun 15 Python
如何解决python多种版本冲突问题
Oct 13 Python
Python实现列表索引批量删除的5种方法
Nov 16 #Python
Python 列表反转显示的四种方法
Nov 16 #Python
python 爬虫如何实现百度翻译
Nov 16 #Python
Python list和str互转的实现示例
Nov 16 #Python
python list的index()和find()的实现
Nov 16 #Python
Python识别处理照片中的条形码
Nov 16 #Python
Python将list元素转存为CSV文件的实现
Nov 16 #Python
You might like
初学者入门:细述PHP4的核心Zend
2006/09/05 PHP
剖析 PHP 中的输出缓冲
2006/12/21 PHP
php实现mysql数据库备份类
2008/03/20 PHP
计算一段日期内的周末天数的php代码(星期六,星期日总和)
2009/11/12 PHP
php删除数组元素示例分享
2014/02/17 PHP
php实现表单多按钮提交action的处理方法
2015/10/24 PHP
ExtJS 简介 让你知道extjs是什么
2008/12/29 Javascript
jQuery 版元素拖拽原型代码
2011/04/25 Javascript
Javascript动态引用CSS文件的2种方法介绍
2014/06/06 Javascript
在Node.js中使用Javascript Generators详解
2016/05/05 Javascript
AngularJS 中文API参考手册
2016/07/28 Javascript
微信小程序 缓存(本地缓存、异步缓存、同步缓存)详解
2017/01/17 Javascript
jquery ui sortable拖拽后保存位置
2017/04/27 jQuery
bootstrap的工具提示实例代码
2017/05/17 Javascript
基于vue的短信验证码倒计时demo
2017/09/13 Javascript
angular指令笔记ng-options的使用方法
2017/09/18 Javascript
vue的for循环使用方法
2019/02/12 Javascript
ES6之Proxy的get方法详解
2019/10/11 Javascript
微信小程序实现轨迹回放的示例代码
2019/12/13 Javascript
JavaScript实现沿五角星形线摆动的小圆实例详解
2020/07/28 Javascript
基于vue实现微博三方登录流程解析
2020/11/04 Javascript
python制作websocket服务器实例分享
2016/11/20 Python
python反编译学习之字节码详解
2019/05/19 Python
numpy linalg模块的具体使用方法
2019/05/26 Python
基于spring boot 日志(logback)报错的解决方式
2020/02/20 Python
解决python便携版无法直接运行py文件的问题
2020/09/01 Python
CSS3制作圆形滚动进度条动画的示例
2020/11/05 HTML / CSS
美国大型的健身社区和补充商店:Bodybuilding.com
2016/09/06 全球购物
Electrolux伊莱克斯巴西商店:家用电器、小家电和配件
2018/05/23 全球购物
介绍一下write命令
2014/08/10 面试题
蔬菜基地的创业计划书
2014/01/06 职场文书
森林防火宣传标语
2014/06/27 职场文书
女生抽烟检讨书
2014/10/05 职场文书
Python 多线程之threading 模块的使用
2021/04/14 Python
vue组件冲突之引用另一个组件出现组件不显示的问题
2022/04/13 Vue.js
图神经网络GNN算法
2022/05/11 Python