创建具有02日期时间之间的差异的列-Pandas

时间:2020-02-17 21:38:55

标签: python pandas date

我有一个包含02个datetime列的数据集,我想计算两者之间的区别,并创建一个具有该区别的新列:

Column 1               Column 2
2020-02-14 01:16:32     2020-02-14 08:38:59  
2019-12-24 00:09:29     2019-12-24 02:51:38
2020-02-17 00:39:02     2020-02-17 02:17:25

这个想法是让第2列-第1列的差异以小时为单位。 我没有找到一种方法来满足我的需要,我尝试只是进行一次基本计算,然后再减去一次,但这没有用,所以我希望有人可以帮助完成此任务

谢谢

2 个答案:

答案 0 :(得分:1)

将两列(在转换为日期时间之后)进行区分,然后使用dt访问器方法获得timedelta的总秒数差。除以3600(每分钟60秒,每小时60分钟)来转换为小时。将结果分配回数据框。

df = pd.DataFrame({
    "Column 1": ["2020-02-14 01:16:32", "2019-12-24 00:09:29", "2020-02-17 00:39:02"],
    "Column 2": ["2020-02-14 08:38:59", "2019-12-24 02:51:38", "2020-02-17 02:17:25"]}
)

time_delta = pd.to_datetime(df['Column 2']) - pd.to_datetime(df['Column 1'])
>>> df.assign(hours_difference=time_delta.dt.total_seconds().div(3600))
              Column 1             Column 2  hours_difference
0  2020-02-14 01:16:32  2020-02-14 08:38:59          7.374167
1  2019-12-24 00:09:29  2019-12-24 02:51:38          2.702500
2  2020-02-17 00:39:02  2020-02-17 02:17:25          1.639722

答案 1 :(得分:0)

使用numpy和OAuthProvider

firebase-admin