博客
关于我
Python3 求最大/小值及索引值 Numpy
阅读量:797 次
发布时间:2023-03-08

本文共 1526 字,大约阅读时间需要 5 分钟。

numpy函数解析:argmin、argmax、argwhere与argsort的应用

在Python编程中,numpy库提供了许多强大的函数来处理数组数据,argmin、argmax、argwhere和argsort是其中非常实用的工具。这些函数可以帮助我们快速找到数组中的最值及其位置,或者找到满足条件的元素位置。以下将从这些函数的功能和用法入手,帮助你更好地理解和应用它们。

np.argmin:求最小值及其索引

np.argmin()函数用于在数组中找到最小的元素,并返回其索引。默认情况下,它会返回整个数组中的最小值及其第一个出现的索引。例如:

c = np.array([[11, 2, 8, 4], [4, 52, 6, 17], [2, 8, 9, 100]])print(np.argmin(c))# 输出:1

当使用axis参数时,可以指定沿着哪个轴进行操作。例如,axis=0表示按列求最小值,axis=1表示按行求最小值:

print(np.argmin(c, axis=0))  # 按每列求出最小值的索引# 输出:[2 0 1 0]print(np.argmin(c, axis=1))  # 按每行# 输出:[1 0 0]

np.argmax:求最大值及其索引

np.argmax()函数与np.argmin()类似,但它用于找到数组中的最大值及其索引。同样,可以通过指定axis参数来控制操作方向:

print(np.argmax(c, axis=0))  # 按每列求出最大值的索引# 输出:[0 1 2 3]print(np.argmax(c, axis=1))  # 按每行# 输出:[3 3 3]

np.argwhere:找到满足条件的元素位置

np.argwhere()函数用于根据条件找到数组中满足条件的元素位置。例如,以下代码找到了大于1的元素位置:

x = np.arange(6).reshape(2,3)print(x)# 输出:[[0, 1, 2], [3, 4, 5]]print(np.argwhere(x > 1))# 输出:array([[0, 2],       [1, 0],       [1, 1],       [1, 2]])

np.argsort:排序并返回索引

np.argsort()函数用于对数组进行排序,并返回排序后的索引。默认情况下,它会返回数组元素值从小到大排序的索引。例如:

x = np.array([3, 1, 2])print(np.argsort(x))# 输出:[1, 2, 0]

对于二维数组,可以通过指定axis参数来控制排序方向:

x = np.array([[0, 3], [2, 2]])print(np.argsort(x, axis=0))# 输出:[[0, 1],#        [1, 0]]print(np.argsort(x, axis=1))# 输出:[[0, 1],#        [0, 1]]

根据键值排序

除了对元素本身进行排序,np.argsort()还支持根据自定义键值进行排序。例如,可以先定义一个包含键值的元组数组:

x = np.array([(1, 0), (0, 1)], dtype=[('x', np.int32), ('y', np.int32)])print(x)# 输出:# array([(1, 0), (0, 1)], dtype=[('x', '

通过这些函数,你可以轻松地在Python中对numpy数组进行高效的索引和排序操作。它们在数据分析、机器学习模型训练等场景中都有广泛应用。

转载地址:http://eulfk.baihongyu.com/

你可能感兴趣的文章
python图像条状状噪声,使用PYTHON PIL从验证码图像中删除背景嘈杂的线条
查看>>
Python图像处理:从内存加载jpeg
查看>>
python固定后缀(名物化词汇)词频统计:抽取+统计+可视化
查看>>
python商品评论数据采集与分析可视化系统 Flask框架 requests爬虫 NLP情感分析 毕业设计 源码
查看>>
python商品数据分析可视化系统(带爬虫)京东销售数据分析 计算机毕业设计 源码下载
查看>>
python商品库存管理系统 django框架 商品网站 MySQL数据库 源码下载 计算机毕业设计
查看>>
Python哪个版本最稳定好用2023.10.19
查看>>
Python和黑客技术的渊源
查看>>
Python和RF编写接口自动化
查看>>
python和js哪个难_【Python】记一次学习,Python 与 js 在实现闭包时的差异
查看>>
python和java哪个更值得学——来自知乎高赞回答
查看>>
python和c混合编程 github_在pycharm中使用git版本管理以及同步github的方法
查看>>
python命名空间更改_Python模块xml.etree.ElementTree自动修改xml命名空间键
查看>>
Python命名中尾随下划线有什么好处?
查看>>
Python启动脚本
查看>>
Python听写汇总结果
查看>>
python吊打Excel?屁!那是你不会用!
查看>>
Python合并两张图片 | 先叠透明度再合并 (附Demo)
查看>>
python各进制的表述与转换
查看>>
python各种库安装
查看>>