dask.array.max

dask.array.max

dask.array.max(a, axis=None, keepdims=False, split_every=None, out=None)[源代码]

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

此文档字符串是从 numpy.max 复制的。

Dask 版本可能存在一些不一致性。

参数
aarray_like

输入数据。

None 或 int 或 int 的元组,可选

操作所沿的轴或轴。默认情况下,使用展平的输入。

1.7.0 新版功能.

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

ndarray,可选

可选的输出数组,用于放置结果。必须与预期输出的形状和缓冲区长度相同。更多详情请参见 Output type determination

keepdimsbool, 可选

如果设置为True,被减少的轴将作为尺寸为1的维度保留在结果中。通过此选项,结果将正确地与输入数组进行广播。

如果传递了默认值,那么 keepdims 将不会传递给 ndarray 子类的 max 方法,然而任何非默认值都会被传递。如果子类的方法没有实现 keepdims,任何异常都会被引发。

初始标量,可选 (Dask 中不支持)

输出元素的最小值。必须存在以允许在空切片上进行计算。详情请参见 ~numpy.ufunc.reduce

1.15.0 新版功能.

哪里array_like 的布尔值,可选 (Dask 不支持)

用于比较的最大元素。详情请参见 ~numpy.ufunc.reduce

1.17.0 新版功能.

返回
最大值ndarray 或标量

a 的最大值。如果 axis 是 None,结果是一个标量值。如果 axis 是整数,结果是一个维度为 a.ndim - 1 的数组。如果 axis 是元组,结果是一个维度为 a.ndim - len(axis) 的数组。

参见

amin

沿着给定轴的数组的最小值,传播任何 NaN。

nanmax

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

maximum

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

fmax

两个数组逐元素的最大值,忽略任何 NaN。

argmax

返回最大值的索引。

nanmin, minimum, fmin

注释

NaN 值会被传播,也就是说,如果至少有一个元素是 NaN,相应的最大值也将是 NaN。要忽略 NaN 值(MATLAB 行为),请使用 nanmax。

不要使用 ~numpy.max 进行两个数组的元素比较;当 a.shape[0] 为 2 时,maximum(a[0], a[1])max(a, axis=0) 更快。

示例

>>> import numpy as np  
>>> a = np.arange(4).reshape((2,2))  
>>> a  
array([[0, 1],
       [2, 3]])
>>> np.max(a)           # Maximum of the flattened array  
3
>>> np.max(a, axis=0)   # Maxima along the first axis  
array([2, 3])
>>> np.max(a, axis=1)   # Maxima along the second axis  
array([1, 3])
>>> np.max(a, where=[False, True], initial=-1, axis=0)  
array([-1,  3])
>>> b = np.arange(5, dtype=float)  
>>> b[2] = np.nan  
>>> np.max(b)  
np.float64(nan)
>>> np.max(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