numpy.min#

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

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

参数:
a类数组

输入数据。

axisNone、int 或 int 元组,可选

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

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

outndarray,可选

用于放置结果的替代输出数组。必须与预期输出具有相同的形状和缓冲区长度。有关更多详细信息,请参阅输出类型确定

keepdims布尔值,可选

如果设置为 True,则被缩减的轴将作为大小为一的维度保留在结果中。使用此选项,结果将与输入数组正确广播。

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

initial标量,可选

输出元素的最小值。必须存在以允许对空切片进行计算。有关详细信息,请参阅reduce

where布尔类数组,可选

要比较以求最小值的元素。有关详细信息,请参阅reduce

返回:
minndarray 或 标量

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

另请参阅

amax

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

nanmin

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

minimum

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

fmin

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

argmin

返回最小值的索引。

nanmax, maximum, fmax

注意

NaN 值会传播,也就是说如果至少一个项是 NaN,则相应的最小值也将是 NaN。要忽略 NaN 值(MATLAB 行为),请使用 nanmin。

不要使用min对两个数组进行逐元素比较;当a.shape[0]为 2 时,minimum(a[0], a[1])min(a, axis=0)更快。

示例

>>> import numpy as np
>>> a = np.arange(4).reshape((2,2))
>>> a
array([[0, 1],
       [2, 3]])
>>> np.min(a)           # Minimum of the flattened array
0
>>> np.min(a, axis=0)   # Minima along the first axis
array([0, 1])
>>> np.min(a, axis=1)   # Minima along the second axis
array([0, 2])
>>> np.min(a, where=[False, True], initial=10, axis=0)
array([10,  1])
>>> b = np.arange(5, dtype=float)
>>> b[2] = np.nan
>>> np.min(b)
np.float64(nan)
>>> np.min(b, where=~np.isnan(b), initial=10)
0.0
>>> np.nanmin(b)
0.0
>>> np.min([[-50], [10]], axis=-1, initial=0)
array([-50,   0])

请注意,初始值被用作确定最小值的元素之一,这与 Python 的 max 函数的默认参数不同,后者仅用于空可迭代对象。

请注意,这与 Python 的 default 参数不同。

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