You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取二维Numpy数组中各列最大值所在的行号?

如何获取二维Numpy数组中各列最大值所在的行号?

嗨,这问题太典型了,Numpy里正好有个“魔法函数”能直接搞定——np.argmax()!

先看你的示例数组:

import numpy as np
a = np.array([[2, 3, 1, 9], [0, 5, 4, 7], [2, 4, 6, 8]])

你要的是每一列最大值对应的行号,只需要给np.argmax()指定axis=0参数就行:

row_indices = np.argmax(a, axis=0)
print(row_indices)

运行结果就是:

array([0, 1, 2, 0])

刚好和你预期的结果完全一致!

这里再补充个小细节帮你理解:

  • axis=0表示沿着列的方向计算,也就是逐列找最大值的行索引
  • 如果以后你需要找每行最大值的列索引,把axis改成1就行

是不是超省心?Numpy的内置函数不仅代码简洁,处理大数组时的效率也比手动写循环高太多啦~

备注:内容来源于stack exchange,提问作者Paul Jurczak

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.14 14:25:28