我试图在我的数据帧中的两列datetime之间获得差异,如下所示:
Time 1 Time 2 Hours
2019-02-24 09:35:49 2019-02-24 09:18:47 0
2019-02-24 09:43:45 2019-02-24 09:18:47 0
2019-02-24 21:52:25 2019-02-24 09:18:47 12
2019-02-25 22:04:11 2019-02-24 21:52:25 0
2019-02-25 22:49:53 2019-02-24 21:52:25 0
2019-02-25 12:52:32 2019-02-24 21:52:25 15
2019-02-25 00:53:57 2019-02-25 12:52:32 12
2019-02-25 02:47:47 2019-02-25 00:53:57 1
我正在使用以下代码:
delta = Time 2 - Time 1
totalSeconds = delta.seconds
Hours = divmod(totalSeconds, 3600)[0]
df.loc[index,'Hours'] = Hours
但问题是,这个代码没有考虑到日期的变化帐户。在在我的数据的第4行,日期时间的值相隔一天,但它仍然显示小时差为0小时,因为我认为它只是减去时间,而不考虑日期的变化。你知道吗
我应该在我的代码中更改什么,请建议。你知道吗
用
delta.total_seconds()
代替delta.seconds
秒是一天中的秒数。Total_seconds将整个时间增量转换为秒,可以超过1天。你知道吗
这个小演示使用数据的第4行。你知道吗
在:
输出:
相关问题 更多 >
编程相关推荐