2026a

# argmax


返回集合的最大值的索引。

# 语法

argmax(A)
argmax(A; dims)

# 说明

argmax(A) 返回集合 A 最大值的索引。可以有多个最大元素,在这种情况下 argmax 将返回一个最大索引,但不一定是第一个。 示例


argmax(A; dims) 返回集合 A 沿维度 dims 的最大值索引。 示例


NaN 被视为大于所有数值(除 missing 外)。

# 示例

集合最大值的索引
argmax([8, 0.1, -9, pi])
1
argmax([1, 7, 7, 6])
2
argmax([1, 7, 7, NaN])
4

矩阵最大值的索引。

A = [1.0 2; 3 4]
argmax(A)
CartesianIndex(2, 2)
矩阵沿行、列的最大值索引
A = [1.0 2; 3 4]

A 沿列的最大值索引。

argmax(A, dims = 1)
ans = 1×2 Matrix{CartesianIndex{2}}:
CartesianIndex(2, 1)  CartesianIndex(2, 2)

A 沿行的最大值索引。

argmax(A, dims = 2)
ans = 2×1 Matrix{CartesianIndex{2}}:
CartesianIndex(1, 2)
CartesianIndex(2, 2)

# 输入参数

A - 输入数组
标量 | 元组 | 向量 | 矩阵 | 多维数组

输入数组,指定为标量、元组、向量、矩阵、多维数组。

数据类型: Int8 | Int16 | Int32 | Int64 | Int128 | UInt8 | UInt16 | UInt32 | UInt64 | UInt128 | Float16 | Float32 | Float64 | Bool

dims - 运算的维度
正整数标量

运算的维度,指定为正整数标量。如果未指定值,则默认为整个数组。

以一个二维输入数组 A 为例:

argmax(A, dims = 1) 求 A 每一列的最大值索引并返回一个 1×n 的矩阵。

# 另请参阅

maximum | argmin