如何检查pandas系列是否包含时间戳?

Aiv*_*var 5 python pandas

以下似乎至少在某些情况下起作用:

series.dtype == np.dtype('<M8[ns]')
Run Code Online (Sandbox Code Playgroud)

但它看起来不漂亮,我不确定它是否始终有效(所有(?)种类的时间戳).

有没有更好的方法来测试列是否包含时间戳?

shi*_*vsn 8

试试这个它应该工作:

pd.core.dtypes.common.is_datetime_or_timedelta_dtype(series)
Run Code Online (Sandbox Code Playgroud)

如果你通过,pd.core.dtypes.common.is_你会发现很多选项来检查时间戳.如果你想组合它们,那么你可以使用逻辑运算符,如:

pd.core.dtypes.common.is_datetime64_ns_dtype(ser)|pd.core.dtypes.common.is_timedelta64_ns_dtype(ser)
Run Code Online (Sandbox Code Playgroud)