【Python数据清洗】np.argmax()函数用法解析

  1. 简介
    numpy.argmax(array, axis) 用于返回一个numpy数组中最大值的索引值。当一组中同时出现几个最大值时,返回第一个最大值的索引值。

在运算时,相当于剥掉一层中括号,返回一个数组,分为一维和多维。一维数组剥掉一层中括号之后就成了一个索引值,是一个数,而n维数组剥掉一层中括号后,会返回一个 n-1 维数组,而剥掉哪一层中括号,取决于axis的取值。

n维的数组的 axis 可以取值从 0 到 n-1,其对应的括号层数为从最外层向内递进,详见后文。

一、一维数组的用法

one_dim_array = np.array([1, 4, 5, 3, 7, 2, 6])
print(np.argmax(one_dim_array))

1
2
运算后,降一维,成为一个数值,7的索引值维4,所以运算结果:

4
1
二、多维数组的用法

  1. 二维
    遵循运算之后降一维的原则,因此返回的会是一个一维的array。同时,axis的取值为0和1,对应剥掉的中括号,将里面的内容直接按逗号分隔:
    0 —— 外层
    1 —— 内层

举例如下:

two_dim_array = np.array([[1, 3, 5], [0, 4, 3]])
max_index_axis0 = np.argmax(two_dim_array, axis = 0)
max_index_axis1 = np.argmax(two_dim_array, axis = 1)
print(max_index_axis0)
print(max_index_axis1)

1
2
3
4
5
输出结果

[0 1 0]
[2 1]
1
2
这里的two_dim_array是一个 2×3 的矩阵,对应axis为:
array axis
2 —— 0
3 —— 1
所以,在axis为0时,剥掉2,返回一个1×3的数组;在axis为1时,剥掉3,返回一个1×2的数组

two_dim_array = np.array([[1, 3, 5], [0, 4, 3]])
max_index_axis0 = np.argmax(two_dim_array, axis = 0)
“”"
在axis为0时,0层括号置外面提出来,0 层内按 “,” 换行对齐,
[[1, 3, 5],
[0, 4, 3]]
分别对已经对齐的元素按照 0 层括号外面的逗号分组,这里的
[1, 3, 5],
[0, 4, 3]
0 层外面没有逗号,因此是一组
然后按列比较大小即可,返回值为

[argmax(1,0
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值