python中找出numpy array数组的最值及其索引介绍

2023-10-29

转自:微点阅读  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))

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python中找出numpy array数组的最值及其索引介绍 的相关文章

随机推荐

  • C语言库编译时添加编译时间和svn版本号

    1 功能应用背景和开发思路 1 应用背景 当程序出错时 我们想要知道库的版本信息 这样有助于定位错误是哪个版本引入的 缩小排查的范围 就算程序没有出错 能知道库的版本 也方便知道程序的版本 2 思路 在编译源码时 获取svn版本和编译时间并
  • Python 中的键值(具名)参数:如何使用它们

    键值参数是 Python 的一个特性 对于从其他编程语言转到 Python 的人来说 不免看起来有些奇怪 人们在学习 Python 的时候 经常要花很长时间才能理解键值参数的各种特性 在 Python 教学中 我经常希望我能三言两语就把键值
  • 阿里巴巴达摩院通义千问【附申请链接】阿里版ChatGPT

    Welcome to Aedream同学 s blog 文章目录 报名测试 实际体验效果 阿里云作为数一数二的全球云平台 阿里的大语言模型通义千问还是值得期待的 凭借强大的算力支持还是有机会赶上人工智能发展浪潮 早前阿里巴巴达摩院关于人工智
  • Java Map 所有的值转为String类型

    可以使用 Java 8 中的 Map replaceAll 方法将所有的值转为 String 类型 Map
  • spring 事务异常org.springframework.beans.factory.support.DefaultListableBeanFactory@1b4c1d7: defining be

    事务异常错误信息 org springframework beans factory support DefaultListableBeanFactory 1b4c1d7 defining beans indexController tes
  • 浅谈对Linux中行规程(Line Discipline)的理解

    文章目录 前言 一 Line Discipline是什么 二 在输入子系统中的位置 总结 前言 学完Linux驱动程序中的输入子系统 Input System 后 又接触到行规程 Line Discipline 明明这个行规程也是用来处理输
  • Linux网络编程:Web服务器

    文章目录 一 超文本编辑语言HTML 二 HTTP超文本传输协议 1 请求和响应消息流程 myhttpd c getline函数 用于读取http协议头 2 错误 2 1 处理出错返回disconnect 2 2 错误页面展示send er
  • 【机器学习】:梯度提升决策树(GBDT)

    综述 GBDT Gradient Boosting Decision Tree 又叫 MART Multiple Additive Regression Tree 是一种迭代的决策树算法 该算法由多棵决策树组成 所有树的结论累加起来做最终答
  • 深度解读Q_D指针与Q_Q指针

    首先是Q D指针 先贴上我们的测试用例 class TEST class TESTPrivate public TESTPrivate TEST parent q ptr parent a 666 cout lt lt TESTPrivat
  • 【C++】初阶 --- 引用(超级详细版!!!)

    文章目录 一 引用的概念 二 引用的特性 1 引用在定义时必须初始化 2 一个变量可以有多个引用 3 引用一旦引用一个实体 再不能引用其他实体 三 常引用 被const 修饰的引用 1 权限的放大 2 权限的平移 3 权限的缩小 4 临时变
  • Java 字符串Base64编码和解码

    编码 String message 我是码农 String encode Base64 getEncoder encodeToString message getBytes StandardCharsets UTF 8 方式一 String
  • 线程与进程的区别

    1 一个程序至少有一个进程 一个进程至少有一个线程 2 线程的划分尺度小于进程 使得多线程程序的并发性高 3 进程在执行过程中拥有独立的内存单元 而多个线程共享内存 从而极大地提高了程序的运行效率 4 每个独立的线程有一个程序运行的入口 顺
  • 老油条表示真干不过,部门新来的00后网络安全工程师已把我卷崩溃,想离职了...

    在程序员职场上 什么样的人最让人反感呢 是技术不好的人吗 并不是 技术不好的同事 我们可以帮他 是技术太强的人吗 也不是 技术很强的同事 可遇不可求 向他学习还来不及呢 真正让人反感的 是技术平平 却急于表现自己的人 每天加班到12点 在老
  • 在Idea中,如何在SpringBoot中使用jsp页面

    在Idea中 如何在SpringBoot中使用jsp页面 1 首先 创建一个SpringBoot工程 选择Spring Initializr 然后点击next 修改工程路径 jdk根据自己安装的具体的jdk版本进行选择 根据项目所需进行选择
  • 刷脸支付彻底解决顾客的支付安全更方便

    创业能成功 其中一项不为人知的关键就在于你无需热爱自己所做的事情 热情当然必需要有 但它可以是因为这个生意能赚钱 而不是对产品的热情 当然这是纯粹的生活选择 不过鉴于赚钱能给自己和他人带来的好处 我希望你发现光是能赚到钱就足以是一种热情 生
  • Unreal4引擎开发学习日志

    Unreal4引擎开发学习笔记1 相关说明 本游戏引擎学习日志是笔者根据网上相关教学视频所写 是对视频内容的精炼与总结 如果您认为笔者所写不清晰明确 可以访问以下链接 Unreal入门第一季 虚幻C 基础训练 虚幻4引擎介绍 虚幻4是一套为
  • 插件编写傻瓜教程>>VC6.0

    gt gt 写在前面本教程主要讲解如何用按键精灵自带的模版编写插件 请大家在教程没全部写完之前不要跟贴 谢谢合作 需要的工具 VC6 0 编辑语言 C gt gt 初步接触1 安装VC6 0 建议不要使用创天的汉化版 2 解压插件自带的模版
  • 软件定价:我们深谙其道吗?

    本文为翻译初稿 更多精彩内容 敬请关注 高效能程序员的修炼 人民邮电出版社 一段时间以来频繁光顾iPhone应用商店 以致于产生了个副作用 我开始从根本上改变了对软件定价的看法 这么多优秀的iPhone应用程序 要么是免费的 要么只卖区区几
  • 关于在windows使用msys2 + mingw + gcc/g++ 编译godot的笔记

    关于在windows使用msys2 mingw gcc g 编译godot的笔记 编译参数 1 target release debug release debug 2 多线程参数 j数字 3 profile是自定义构建参数 可以启用或者禁
  • python中找出numpy array数组的最值及其索引介绍

    转自 微点阅读 https www weidianyuedu com 在list列表中 max list 可以得到list的最大值 list index max list 可以得到最大值对应的索引 但在numpy中的array没有index