测试数组值是否为 NaT,并将结果存储在 Numpy 中的新位置
numpyserver side programmingprogramming更新于 2025/9/26 5:52:17
要测试数组值是否为 NaT,请使用 Python Numpy 中的 numpy.isnat() 方法。我们将存储结果的新位置是一个新数组。
条件通过输入进行广播。在条件为 True 的位置,输出数组将被设置为 ufunc 结果。在其他位置,输出数组将保留其原始值。请注意,如果通过默认 out=None 创建了未初始化的输出数组,则其中条件为 False 的位置将保持未初始化状态。
输出是存储结果的位置。如果提供,则必须具有输入广播到的形状。如果未提供或为 None,则返回一个新分配的数组。元组(只能作为关键字参数)的长度必须等于输出的数量。
步骤
首先,导入所需的库 −
import numpy as np
创建一个包含一些 NaT 和日期值的数组 −
arr = np.array(["2021-12-22", "NaT", "NAT", "nAt", '2021-12'], dtype="datetime64[ns]")
显示数组 −
print("数组...
", arr)
获取数组的类型 −
print("
我们的数组类型...
", arr.dtype)
获取数组的维度 −
print("
我们的数组维度...
",arr.ndim)
获取数组中元素的数量 −
print("
元素数量...
", arr.size)
创建另一个具有相同形状的数组来存储结果 −
arrRes = np.array([5, 5, 5, 5, 5])
要测试数组值是否为 NaT,请使用 Python Numpy 中的 numpy.isnat() 方法。我们将存储结果的新位置是 arrRes −
print("
测试数组是否为 NaT...
",np.isnat(arr, arrRes))
检查存储结果的新数组的值 −
print("
结果...
",arrRes)
示例
import numpy as np
# 创建一个包含一些 NaT 和日期值的数组
arr = np.array(["2021-12-22", "NaT", "NAT", "nAt", '2021-12'], dtype="datetime64[ns]")
# 显示数组
print("数组...
", arr)
# 获取数组的类型
print("
我们的数组类型...
", arr.dtype)
# 获取数组的维度
print("
我们的数组维度...
",arr.ndim)
# 获取数组中元素的数量
print("
元素数量...
", arr.size)
# 创建另一个具有相同形状的数组来存储结果
arrRes = np.array([5, 5, 5, 5, 5])
# 要测试数组值是否为 NaT,请使用 Python Numpy 中的 numpy.isnat() 方法
# 我们将存储结果的新位置是 arrRes
print("
Test array for NaT...
",np.isnat(arr, arrRes))
# 检查存储结果的新数组的值
print("
结果...
",arrRes)
输出
数组... ['2021-12-22T00:00:00.000000000' 'NaT' 'NaT' 'NaT' '2021-12-01T00:00:00.000000000'] 我们的数组类型…… datetime64[ns] 我们的数组维度…… 1 元素数量... 5 测试 NaT 阵列... [0 1 1 1 0] 结果... [0 1 1 1 0]

