在 Python 中返回数组的最大值或忽略任何 NaN 的最大值


要返回数组的最大值或忽略任何 NaN 的最大值,请在 Python 中使用 numpy.nanmax() 方法。该方法返回一个与 a 形状相同的数组,并删除指定的轴。如果 a 是一个 0 维数组,或者如果 axis 为 None,则返回一个 ndarray 标量。返回与 a 相同的数据类型。第一个参数 a 是一个包含所需最大值的数字数组。如果 a 不是数组,则尝试进行转换。

第二个参数 axis 是计算最大值的轴或轴。默认情况下,计算扁平化数组的最大值。第三个参数 out 是一个备用输出数组,用于放置结果。默认为 None;如果提供,它必须与预期输出具有相同的形状,但如果需要,类型将被强制转换。

第四个参数 keepdims 如果将其设置为 True,则减少的轴将保留在结果中,作为大小为 1 的维度。使用此选项,结果将针对原始 a 正确广播。如果该值不是默认值,则 keepdims 将传递给 ndarray 子类的 max 方法。如果子类方法没有实现 keepdims,则会引发任何异常。第五个参数是输出元素的最小值。必须存在才能允许在空切片上进行计算

步骤

首先,导入所需的库 -

import numpy as np

使用 array() 方法创建 NumPy 数组。我们添加了 int 类型和 nan 元素 -

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

显示数组 -

print("Our Array...\n",arr)

检查维度 -

print("\nDimensions of our Array...\n",arr.ndim)

获取数据类型 -

print("\nDatatype of our Array object...\n",arr.dtype)

要返回数组的最大值或忽略任何 NaN 的最大值,请在 Python 中使用 numpy.nanmax() 方法。该方法返回一个与 a 形状相同的数组,并删除指定的轴。如果 a 是一个 0 维数组,或者如果 axis 为 None,则返回一个 ndarray 标量。返回与 a 相同的数据类型 -

print("\nResult (nanmax)...\n",np.nanmax(arr))

示例

import numpy as np

# Creating a numpy array using the array() method
# We have added elements of int type with nan
arr = np.array([[10, 20, 30], [40, np.nan, 60]])

# Display the array
print("Our Array...\n",arr)

# Check the Dimensions
print("\nDimensions of our Array...\n",arr.ndim)

# Get the Datatype
print("\nDatatype of our Array object...\n",arr.dtype)

# To return the maximum of an array or maximum ignoring any NaNs, use the numpy.nanmax() method in Python
print("\nResult (nanmax)...\n",np.nanmax(arr))

输出

Our Array...
[[10. 20. 30.]
[40. nan 60.]]

Dimensions of our Array...
2

Datatype of our Array object...
float64

Result (nanmax)...
60.0

更新于: 2022-03-01

2K+ 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告