比较两个 Numpy 数组并返回忽略 NaN 的逐元素最小值
numpyserver side programmingprogramming更新于 2025/9/21 8:14:00
要比较两个数组并返回忽略 NaN 的逐元素最小值,请使用 Python Numpy 中的 numpy.fmin() 方法。返回值为 True 或 False。
比较两个数组并返回一个包含逐元素最大值的新数组。如果被比较的元素之一是 NaN,则返回非 nan 元素。如果两个元素都是 NaN,则返回第一个元素。后者的区别对于复杂的 NaN 很重要,复杂的 NaN 被定义为实部或虚部中至少有一个是 NaN。最终结果是,在可能的情况下忽略 NaN。
步骤
首先,导入所需的库 −
import numpy as np
使用 array() 方法创建两个 2D numpy 数组。我们插入了一些具有 NaN 值的元素 −
arr1 = np.array([[6, 9, np.NaN],[25, 11, 21]]) arr2 = np.array([[8, np.NaN, np.NaN],[22, 19, 26]])
显示数组 −
print("数组 1...
", arr1)
print("
数组 2...
", arr2)
获取数组的类型 −
print("
我们的数组 1 类型...
", arr1.dtype)
print("
我们的数组 2 类型...
", arr2.dtype)
获取数组的维度 −
print("
我们的数组 1 维度...
",arr1.ndim)
print("
我们的数组 2 维度...
",arr2.ndim)
获取数组的形状 −
print("
我们的数组 1 形状...
",arr1.shape)
print("
我们的数组 2 形状...
",arr2.shape)
要比较两个数组并返回忽略 NaN 的元素最小值,请使用 Python Numpy 中的 numpy.fmin() 方法。返回值为 True 或 False −
print("
结果(忽略 NaN 的最小值)...
",np.fmin(arr1, arr2))
示例
import numpy as np
# 使用 array() 方法创建两个 2D numpy 数组
# 我们插入了一些具有一些 NaN 值的元素
arr1 = np.array([[6, 9, np.NaN],[25, 11, 21]])
arr2 = np.array([[8, np.NaN, np.NaN],[22, 19, 26]])
# 显示数组
print("数组 1...
", arr1)
print("
数组 2...
", arr2)
# 获取数组的类型
print("
我们的数组 1 类型...
", arr1.dtype)
print("
我们的数组 2 类型...
", arr2.dtype)
# 获取数组的维度
print("
我们的数组 1 维度...
",arr1.ndim)
print("
我们的数组 2 维度...
",arr2.ndim)
# 获取数组的形状
print("
我们的数组 1 形状...
",arr1.shape)
print("
我们的数组 2 形状...
",arr2.shape)
# 要比较两个数组并返回忽略 NaN 的元素最小值,请使用 Python Numpy 中的 numpy.fmin() 方法
# 返回值为 True 或 False
print("
结果(忽略 NaN 的最小值)...
",np.fmin(arr1, arr2))
输出
数组 1... [[ 6. 9. nan] [25. 11. 21.]] 数组 2... [[ 8. nan nan] [22. 19. 26.]] 我们的数组 1 类型... float64 我们的数组 2 类型... float64 我们的数组 1 维度... 2 我们的数组 2 维度... 2 我们的数组 1 形状... (2, 3) 我们的数组 2 形状... (2, 3) 结果(忽略 NaN 的最小值)... [[ 6. 9. nan] [22. 11. 21.]]

