python如何获得list或numpy数组中最大元素对应的索引
作者:海晨威 发布时间:2021-02-10 11:30:12
标签:python,list,numpy,最大元素,索引
获得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数组的最值及其索引
来源:https://blog.csdn.net/songyunli1111/article/details/79322103


猜你喜欢
- 1.安装虚拟环境虚拟环境是真实python环境的复制版本。安装虚拟环境的命令:1)sudo pip install virtualenv #
- 面临的问题在我设计一个分析系统中,我们公司的目标是能够处理来自数百万个端点的大量POST请求。web 网络处理程序将收到一个JSON文档,其
- 我的代码的哪些部分运行时间最长、内存最多?我怎样才能找到需要改进的地方?”在开发过程中,我很确定我们大多数人都会想知道这
- 这是一款非常轻量级的纯原生JS的瀑布流插件——Macy.js,如今图片和视频网站非常多,非常适应瀑布流这样的布局方式来呈现给用户。这款流布局
- 1. 模拟场景实现需求为玩家拥有多个英雄,在部署好英雄之后,只用点击进攻,不用关心每个英雄具体自己的攻击手段!2099/12/29 14:1
- ZeroClipboard.js是一个支持复制和粘贴的JavaScript插件,目前官方已经到2.x的版本了,但不支持IE9以下的浏览器,而
- 背景pytorch作为深度学习的计算框架正得到越来越多的应用.我们除了在模型训练阶段应用外,最近也把pytorch应用在了部署上.在部署时,
- 什么是Nacos英文全称Dynamic Naming and Configuration Service,Na为naming/nameSer
- 有感于中国互联网设计界十几年的变化,从网页设计师变身界面设计师,和近一两年来兴起的转型交互设计师。大多数都是随着一个行业的兴起而前赴后继的投
- 问题背景:在开发或者做实验的过程中,我们经常会用到远程服务器或者Github的项目,而我服务器上的项目只能在Jupyter Notebook
- 生产系统随着业务增长总会经历一个业务量由小变大的过程,可扩展性是考量数据库系统高可用性的一个重要指标;在单表/数据库数据量过大,更新量不断飙
- 简述1.pythonpython作为一门解释型脚本语言,它有三种发布方式:文件 : 源码文件,运行需要使用者安装Python环境并且安装依赖
- 本文实例讲述了使用symfony命令创建项目的方法。分享给大家供大家参考,具体如下:概况这一章节描述一个Symfony项目的合理结构框架,并
- PIL:使用python自带图像处理库读取出来的图片格式numpy:使用python-opencv库读取出来的图片格式tensor:pyto
- 本文实例为大家分享了python实现抠图给证件照换背景的具体代码,供大家参考,具体内容如下import cv2import numpy as
- 如下所示:def save(data, path): f = xlwt.Workbook() # 创建工作簿 she
- 使用python脚本实现查询火车票信息的效果图如下:实现的代码:# coding: utf-8"""命令行火车
- 有了ORM,我们就可以把Web App需要的3个表用Model表示出来:import time, uuidfrom transwarp.db
- 这篇文章主要介绍了python实现括号匹配方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可
- 1.什么是连接查询:在实际开发中大部分都不是从一张表中查询数据,一般都是多张表联合查询取得结果。实际开发中,一般一个业务对应多张表。比如:学