在许多情况下,数组的大小太大,从它们中找到最大元素需要太多时间。为此,Python 的 numpy 模块提供了一个名为 numpy.argmax() 的函数。此函数返回与指定轴一起返回的最大值的索引。
用法:
numpy.argmax(a, axis=None, out=None)
参数
x:数组
该参数定义了我们想知道其最大值的源数组。
轴:整数(可选)
该参数定义了索引所在的轴,默认情况下,它进入扁平数组。
输出:数组(可选)
此参数定义将要插入结果的 ndarray。这将是相同的类型和形状,适用于存储结果
返回
此参数定义一个 ndarray,其中包含数组的索引。形状与 x.shape 相同,只是移除了沿轴的尺寸。
范例1:
Import numpy as np
x = np.arange(20).reshape(4,5) + 7
x
y=np.argmax(a)
y
输出:
array([[ 7, 8, 9, 10, 11], [12, 13, 14, 15, 16], [17, 18, 19, 20, 21], [22, 23, 24, 25, 26]]) 19
在上面的代码中
- 我们已经导入了别名为 np.
- 我们使用 np.arange() 函数创建了一个四行五列的数组 'x'。
- 我们还在数组的每个元素中添加了 7。
- 我们已经声明了变量 'y' 并分配了 np.argmax() 函数的返回值。
- 我们已经在函数中传递了数组 'x'。
- 最后,我们尝试打印 'y' 的值。
在输出中,它显示了数组中最大元素的索引。
范例2:
Import numpy as np
x = np.arange(20).reshape(4,5) + 7
y=np.argmax(x, axis=0)
z=np.argmax(x, axis=1)
y
z
输出:
array([3, 3, 3, 3, 3], dtype=int64) array([4, 4, 4, 4], dtype=int64)
范例3:
Import numpy as np
x = np.arange(20).reshape(4,5) + 7
indices = np.unravel_index(np.argmax(x, axis=None), x.shape)
indices
x[indices]
输出:
(3, 4) 26
范例4:
import numpy as np
a = np.array([[5,2,1], [3,7,9],[0, 4, 6]])
index_arr = np.argmax(a, axis=-1)
index_arr
# Same as np.max(a, axis=-1, keepdims=True)
result = np.take_along_axis(a, np.expand_dims(index_arr, axis=-1), axis=-1)
result1
# Same as np.max(a, axis=-1)
result = np.take_along_axis(a, np.expand_dims(index_arr, axis=-1), axis=-1).squeeze(axis=-1)
result2
输出:
array([[0], [2], [2]]) array([5, 9, 6])
在上面的代码中
- 我们已经导入了别名为 np.
- 我们使用 np.array() 函数创建了一个多维数组 'a'。
- 我们已经声明了变量 'index_arr' 并分配了 np.argmax() 函数的返回值。
- 我们已经在函数中传递了数组 'a' 和轴。
- 我们尝试打印 'index_arr' 的值。
- 最后,我们尝试借助两种不同的方式来获取数组的最大值,这与 np.argmax() 非常相似。
在输出中,它显示了数组中最大元素的索引以及该索引上存在的值。
相关用法
- Python numpy.argmax()用法及代码示例
- Python numpy.argmin()用法及代码示例
- Python numpy.argwhere()用法及代码示例
- Python numpy.argsort()用法及代码示例
- Python numpy.argpartition()用法及代码示例
- Python numpy.arccosh()用法及代码示例
- Python numpy.arcsinh()用法及代码示例
- Python numpy.array_repr()用法及代码示例
- Python numpy.array_str()用法及代码示例
- Python numpy.arctan()用法及代码示例
- Python numpy.around()用法及代码示例
- Python numpy.array()用法及代码示例
- Python numpy.arccos()用法及代码示例
- Python numpy.arcsin()用法及代码示例
- Python numpy.array_split()用法及代码示例
- Python numpy.array_equal()用法及代码示例
- Python numpy.arctan2()用法及代码示例
- Python numpy.array_equiv()用法及代码示例
- Python numpy.arange()用法及代码示例
- Python numpy.atleast_2d()用法及代码示例
注:本文由纯净天空筛选整理自 numpy.argmax in Python。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。