You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何测试变量是否为pd.NaT?测试失效问题求助

哈哈,这个坑我踩过!直接用==判断pd.NaT肯定行不通,因为和NaN一样,pd.NaT的特性就是不等于自身,所以你的条件永远不会成立,自然没输出啦。

下面给你几种靠谱的判断方法:

有效检测pd.NaT的方法

1. 用pandas专属的pd.isnat()函数

这是专门针对时间类型缺失值(NaT)设计的检测函数,精准性拉满:

import pandas as pd
a = pd.NaT
if pd.isnat(a):
    print("a is NaT")

2. 用通用缺失值检测函数pd.isna()

这个函数能覆盖所有类型的缺失值(包括NaN、NaT、None),如果你不确定变量类型,用这个更稳妥:

import pandas as pd
a = pd.NaT
if pd.isna(a):
    print("a is a missing value (it's NaT here)")

3. 利用NaT不等于自身的特性(不推荐)

虽然可以这么写,但这种方法没法区分NaT和NaN,只适合临时测试:

import pandas as pd
a = pd.NaT
if a != a:
    print("a is either NaT or NaN")

内容的提问来源于stack exchange,提问作者Clément F

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 12:24:09