数据帧中2个日期时间之间的差异会丢失ns精度

时间:2016-10-07 12:04:36

标签: python pandas dataframe

我有一个包含2列Event_A / Event_B的数据框,如下所示:

In [8]: print (df)
                        Event_A                       Event_B
0 2016-10-03 02:00:09.123456789 2016-10-03 02:00:09.123456547

两列都包含日期时间并具有ns精度。 我的问题是当我关注时,我在新的time_diff列中失去了ns精度:

In [9]: df['time_diff'] = df['Event_A'] - df['Event_B']

In [10]: print (df)
                        Event_A                       Event_B       time_diff
0 2016-10-03 02:00:09.123456789 2016-10-03 02:00:09.123456547 00:00:00.000000

有没有办法强制在两个日期时间之间输出ns的差异? 我是否必须以某种方式转换为ns epoch时间戳(不确定如何转换)才能执行此操作?

1 个答案:

答案 0 :(得分:1)

这看起来像显示问题,如果您访问dt.nanoseconds,那么它将显示纳秒分辨率的差异:

In [85]:
(df['Event_A']- df['Event_B']).dt.nanoseconds

Out[85]:
0    242
dtype: int64