numpy.amax

numpy.amax(a, axis=None, out=None, keepdims=<no value>, initial=<no value>, where=<no value>)[源代码]

返回数组的最大值或沿轴的最大值。

参数
aarray_like

输入数据。

axis无、int或int的元组,可选

沿其操作的轴。默认情况下,使用扁平输入。

1.7.0 新版功能.

如果这是整数的元组,则在多个轴上选择最大值,而不是像以前那样选择单个轴或所有轴。

outndarray,可选

用于放置结果的可选输出数组。必须与预期输出具有相同的形状和缓冲区长度。见 输出类型确定 了解更多详细信息。

keepdims可选的布尔

如果设置为“真”,则缩小的轴将保留在结果中,作为尺寸为1的尺寸。使用此选项,结果将针对输入数组正确广播。

如果传递了默认值,则 keepdims 不会传给 amax 子类方法 ndarray 但是,任何非默认值都是。如果子类的方法不实现 keepdims 将引发任何异常。

initial标量,可选

输出元素的最小值。必须存在才能允许对空切片进行计算。见 reduce 有关详细信息。

1.15.0 新版功能.

where数组类似bool,可选

要比较最大值的元素。看到了吗 reduce 有关详细信息。

1.17.0 新版功能.

返回
amaxndarray或scalar

最大值 a .如果 axis 为“无”,结果是一个标量值。如果 axis 给出的结果是一个维度数组 a.ndim - 1 .

参见

amin

沿给定轴传播的数组的最小值。

nanmax

数组沿给定轴的最大值,忽略任何NaN。

maximum

两个数组的元素最大值,传播任何nan。

fmax

元素方向最多两个数组,忽略任何NaN。

argmax

返回最大值的索引。

nanmin, minimum, fmin

笔记

将传播NaN值,即如果至少有一个项为NaN,则相应的最大值也将为NaN。若要忽略NaN值(Matlab行为),请使用NanMax。

不要使用 amax 用于2个数组的元素比较;当 a.shape[0] 是2, maximum(a[0], a[1]) 比快 amax(a, axis=0) .

实例

>>> a = np.arange(4).reshape((2,2))
>>> a
array([[0, 1],
       [2, 3]])
>>> np.amax(a)           # Maximum of the flattened array
3
>>> np.amax(a, axis=0)   # Maxima along the first axis
array([2, 3])
>>> np.amax(a, axis=1)   # Maxima along the second axis
array([1, 3])
>>> np.amax(a, where=[False, True], initial=-1, axis=0)
array([-1,  3])
>>> b = np.arange(5, dtype=float)
>>> b[2] = np.NaN
>>> np.amax(b)
nan
>>> np.amax(b, where=~np.isnan(b), initial=-1)
4.0
>>> np.nanmax(b)
4.0

可以使用初始值计算空切片的最大值,或者将其初始化为其他值:

>>> np.max([[-50], [10]], axis=-1, initial=0)
array([ 0, 10])

请注意,初始值用作确定最大值的元素之一,与默认参数python的max函数不同,后者只用于空的iterables。

>>> np.max([5], initial=6)
6
>>> max([5], default=6)
5