numpy.nanmax#
- numpy.nanmax(a, axis=None, out=None, keepdims=<no value>, initial=<no value>, where=<no value>)[source]#
返回数组的最大值或沿轴的最大值,忽略任何 NaN。当遇到全 NaN 切片时,会引发
RuntimeWarning
警告,并为该切片返回 NaN。- 参数:
- aarray_like
包含要计算最大值的数字的数组。如果 a 不是数组,则尝试进行转换。
- axis{int, tuple of int, None}, 可选
计算最大值所沿的轴。默认是计算扁平化数组的最大值。
- outndarray, 可选
用于放置结果的备用输出数组。默认值为
None
;如果提供,它必须与预期输出具有相同的形状,但必要时会进行类型转换。有关更多详细信息,请参见 输出类型确定。- keepdimsbool, 可选
如果设置为 True,则被缩减的轴将作为大小为一的维度保留在结果中。使用此选项,结果将与原始 a 正确广播。如果该值不是默认值,则 keepdims 将传递给
max
的子类ndarray
的方法。如果子类方法未实现 keepdims,则会引发任何异常。- initialscalar, 可选
输出元素的最小值。必须存在才能允许对空切片进行计算。有关详细信息,请参见
reduce
。1.22.0 版本新增。
- wherebool 类型的 array_like, 可选
用于比较最大值的元素。有关详细信息,请参见
reduce
。1.22.0 版本新增。
- 返回值:
- nanmaxndarray
一个与 a 具有相同形状的数组,但移除了指定的轴。如果 a 是 0 维数组,或者 axis 为 None,则返回一个 ndarray 标量。返回与 a 相同的 dtype。
另请参见
注意
NumPy 使用 IEEE 二进制浮点算术标准 (IEEE 754)。这意味着“非数字(Not a Number)”不等于无穷大。正无穷大被视为一个非常大的数字,负无穷大被视为一个非常小的(即负数)数字。
如果输入是整数类型,则此函数等效于 np.max。
示例
>>> import numpy as np >>> a = np.array([[1, 2], [3, np.nan]]) >>> np.nanmax(a) 3.0 >>> np.nanmax(a, axis=0) array([3., 2.]) >>> np.nanmax(a, axis=1) array([2., 3.])
当存在正无穷大和负无穷大时
>>> np.nanmax([1, 2, np.nan, -np.inf]) 2.0 >>> np.nanmax([1, 2, np.nan, np.inf]) inf