ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python中如何找出numpy array数组的最值及其索引?

2022-02-22 17:04:21  阅读:319  来源: 互联网

标签:python dtype print where max np array numpy


转自:微点阅读  https://www.weidianyuedu.com

在list列表中,max(list)可以得到list的最大值,list.index(max(list))可以得到最大值对应的索引

但在numpy中的array没有index方法,取而代之的是where,其又是list没有的

首先我们可以得到array在全局和每行每列的最大值(最小值同理)

>>> a = np.arange(9).reshape((3,3))>>> aarray([[0, 1, 2], [9, 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>>> aarray([[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))

标签:python,dtype,print,where,max,np,array,numpy
来源: https://blog.csdn.net/ysds20211402/article/details/123068287

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有