Return the maximum of an array or maximum along an axis.
Axis or axes along which to operate. By default, flattened input is
New in version 1.7.0.
If this is a tuple of ints, the maximum is selected over multiple axes,
instead of a single axis or all the axes as before.
Alternative output array in which to place the result. Must
be of the same shape and buffer length as the expected output.
See Output type determination for more details.
If this is set to True, the axes which are reduced are left
in the result as dimensions with size one. With this option,
the result will broadcast correctly against the input array.
If the default value is passed, then keepdims will not be
passed through to the amax method of sub-classes of
ndarray, however any non-default value will be. If the
sub-class’ method does not implement keepdims any
exceptions will be raised.
The minimum value of an output element. Must be present to allow
computation on empty slice. See reduce for details.
New in version 1.15.0.
Elements to compare for the maximum. See reduce
New in version 1.17.0.
Maximum of a. If axis is None, the result is a scalar value.
If axis is given, the result is an array of dimension
a.ndim - 1.
a.ndim - 1
The minimum value of an array along a given axis, propagating any NaNs.
The maximum value of an array along a given axis, ignoring any NaNs.
Element-wise maximum of two arrays, propagating any NaNs.
Element-wise maximum of two arrays, ignoring any NaNs.
Return the indices of the maximum values.
NaN values are propagated, that is if at least one item is NaN, the
corresponding max value will be NaN as well. To ignore NaN values
(MATLAB behavior), please use nanmax.
Don’t use amax for element-wise comparison of 2 arrays; when
a.shape is 2, maximum(a, a) is faster than
>>> a = np.arange(4).reshape((2,2))
>>> np.amax(a) # Maximum of the flattened array
>>> np.amax(a, axis=0) # Maxima along the first axis
>>> np.amax(a, axis=1) # Maxima along the second axis
>>> np.amax(a, where=[False, True], initial=-1, axis=0)
>>> b = np.arange(5, dtype=float)
>>> b = np.NaN
>>> np.amax(b, where=~np.isnan(b), initial=-1)
You can use an initial value to compute the maximum of an empty slice, or
to initialize it to a different value:
>>> np.max([[-50], ], axis=-1, initial=0)
array([ 0, 10])
Notice that the initial value is used as one of the elements for which the
maximum is determined, unlike for the default argument Python’s max
function, which is only used for empty iterables.
>>> np.max(, initial=6)
>>> max(, default=6)