NumPy amin() 函数
NumPy amin() 函数返回数组沿指定轴的最小值。如果未指定轴,则计算数组中所有元素的最小值。此外,还可以应用条件,根据特定标准获取最小值。
语法
以下是 NumPy amin() 函数的语法 -
numpy.amin(a, axis=None, out=None, keepdims=False, initial=None, where=True)
参数
以下是 NumPy amin() 函数的参数 -
- a:输入数组。该数组可以是任意形状或数据类型。
- axis(可选):计算最小值的轴。如果为 None,则在展平数组上计算最小值。
- out(可选):用于放置结果的备用输出数组。其形状必须与预期输出相同。
- keepdims(可选):如果为 True,则缩小的维度在输出中保留为大小为 1 的维度。默认值为 False。
- initial(可选):启动比较的初始值。如果未提供,则默认值为该数据类型的最大可能值。
- where(可选):布尔数组。如果为 True,则在计算中包含相应的元素;否则,忽略它。
返回值
此函数返回一个标量值或一个 NumPy 数组,其中包含指定轴上的最小值。
示例
以下是使用 NumPy amin() 函数查找数组中最小值的基本示例 -
import numpy as np # 输入数组 array = np.array([3, 5, 1, 7, 9]) # 查找最小值 min_value = np.amin(array) print("最小值:", min_value)
输出
以下是上述代码的输出 −
最小值:1
示例:沿轴求最小值
amin() 函数可以查找多维数组中沿指定轴的最小值。在以下示例中,我们计算沿行和列的最小值 -
import numpy as np # 二维输入数组 array = np.array([[3, 7, 5], [8, 4, 2], [6, 1, 9]]) # 沿行 (axis=1) 的最小值 min_along_rows = np.amin(array, axis=1) print("沿行的最小值:", min_along_rows) # 沿列 (axis=0) 的最小值 min_along_columns = np.amin(array, axis=0) print("沿列的最小值:", min_along_columns)
输出
以下是输出以上代码 −
行方向最小值:[3 2 1] 列方向最小值:[3 1 2]
示例:使用 keepdims 实现最小值
keepdims 参数将缩减后的维度保留为输出中的一维。在此示例中,我们演示了它的用法 -
import numpy as np # 二维输入数组 array = np.array([[3, 7, 5], [8, 4, 2], [6, 1, 9]]) # keepdims=True 时沿行求最小值 min_with_keepdims = np.amin(array, axis=1, keepdims=True) print("使用 keepdims 求最小值: ", min_with_keepdims)
输出
以下是上述代码的输出 -
使用 keepdims 求最小值: [[3] [2] [1]]
示例:使用"where"条件的最小值
where 参数允许根据条件计算最小值。在以下示例中,我们仅计算选定元素的最小值 -
import numpy as np # 输入数组 array = np.array([3, 5, 1, 7, 9]) # where 条件(仅包含大于 4 的值) min_with_condition = np.amin(array, where=array > 4, initial=10) print("Minimum with condition:", min_with_condition)
输出
以下是上述代码的输出 -
Minimum with condition: 5
示例:'amin()' 的图形表示
在以下例如,我们可视化二维数组的行和列上的最小值。为此,我们需要导入 numpy 和 matplotlib.pyplot 模块 -
import numpy as np import matplotlib.pyplot as plt # 二维输入数组 array = np.array([[3, 7, 5], [8, 4, 2], [6, 1, 9]]) # 沿行最小值 min_rows = np.amin(array, axis=1) # 沿列最小值 min_columns = np.amin(array, axis=0) plt.plot(range(len(min_rows)), min_rows, label="沿行最小值") plt.plot(range(len(min_columns)), min_columns, label="沿列的最小值") plt.title("amin() 结果可视化") plt.xlabel("索引") plt.ylabel("最小值") plt.legend() plt.grid() plt.show()
输出
该图可视化了数组沿行和列的最小值 -

numpy_statistical_functions.html