在 Python 中返回数组沿轴 1 的最大值或忽略所有 NaN 的最大值

numpyserver side programmingprogramming更新于 2025/9/23 4:22:17

要返回数组沿轴 1 的最大值或忽略所有 NaN 的最大值,请使用 Python 中的 numpy.nanmax() 方法。该方法返回一个与 a 形状相同但移除指定轴的数组。如果 a 为零维数组,或者轴为 None,则返回一个 ndarray 标量。返回的数据类型与 a 相同。第一个参数 a 是一个包含所需最大值的数字的数组。如果 a 不是数组,则尝试进行类型转换。第二个参数 axis 是计算最大值所沿的一个或多个轴。默认值为计算展平数组的最大值。

第三个参数 out 是用于放置结果的备用输出数组。默认值为 None;如果提供,则必须具有与预期输出相同的形状,但必要时会强制转换类型。第四个参数 keepdims 设置为 True,则缩小的轴将保留为结果中大小为 1 的维度。使用此选项,结果将根据原始 a 正确广播。如果该值不是默认值,则 keepdims 将传递给 ndarray 子类的 max 方法。如果子类方法未实现 keepdims,则会引发任何异常。

第五个参数是输出元素的最小值。必须存在才能允许在空切片上进行计算

步骤

首先,导入所需的库 −

import numpy as np

使用 array() 方法创建一个 numpy 数组。我们用 nan 添加了 int 类型的元素 −

arr = np.array([[10, 20, 30], [40, np.nan, 60]])

显示数组 −

print("我们的数组...
",arr)

检查维度 −

print("
我们的数组的维度...
",arr.ndim)

获取数据类型 −

print("
数组对象的数据类型...
",arr.dtype)

要返回数组的最大值或忽略任何 NaN 的最大值,请使用 numpy.nanmax() 方法 −

print("
结果 (nanmax)...
",np.nanmax(arr, axis = 1))

示例

import numpy as np

# 使用 array() 方法创建 numpy 数组
# 我们添加了 int 类型的元素,并使用 nan 类型
arr = np.array([[10, 20, 30], [40, np.nan, 60]])

# 显示数组
print("我们的数组...
",arr) # 检查维度 print("
数组的维度...
",arr.ndim) # 获取数据类型 print("
数组对象的数据类型...
",arr.dtype) # 要返回数组的最大值或忽略任何 NaN 的最大值,请使用 Python 中的 numpy.nanmax() 方法 print("
Result (nanmax)...
",np.nanmax(arr, axis = 1))

输出

我们的数组...
[[10. 20. 30.]
[40. nan 60.]]

数组的维度...
2

数组对象的数据类型...
float64

结果 (nanmax)...
[30. 60.]

相关文章