返回数组的最大值或沿轴的最大值。
参数:a: : array_like
输入数据。
axis: : None 或 int 或 tuple of ints, 可选参数
沿其运行的一个或多个轴。默认情况下,使用拼合的输入。
1.7.0版中的新功能。
如果这是一个整数元组,则在多个轴上选择最大值,而不是像以前那样在单个轴或所有轴上进行选择。
out: : ndarray, 可选参数
放置结果的备用输出数组。必须具有与预期输出相同的形状和缓冲区长度。看到doc.ufuncs(第“Output arguments”节)了解更多详情。
keepdims: : bool, 可选参数
如果将其设置为True,则缩小的轴将保留为尺寸1的尺寸。使用此选项,结果将针对输入数组正确广播。
如果传递了默认值,则keepdims不会传递给amax的子类方法ndarray,但是任何非默认值都是。如果sub-class’方法未实现keepdims任何例外情况都会提出。
initial: : scalar, 可选参数
输出元素的最小值。必须存在以允许在空片上进行计算。参考reduce有关详细信息。
1.15.0版中的新功能。
where: : array_like of bool, 可选参数
要比较的最大元素。参考reduce有关详细信息。
1.17.0版中的新功能。
返回值:amax: : ndarray或标量
最多一个。如果axis为None,则结果为标量值。如果指定了axis,则结果为一维数组a.ndim - 1。
注意:
将传播NaN值,即,如果至少一项是NaN,则相应的最大值也将是NaN。要忽略NaN值(MATLAB行为),请使用nanmax。
不要使用amax用于2个数组的逐元素比较;当a.shape[0]是2maximum(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函数不同,后者仅用于空的可迭代对象。
>>> np.max([5], initial=6)
6
>>> max([5], default=6)
5