Python 如何从两个csv文件计算两个datetime之间的增量时间(小时)?

Python 如何从两个csv文件计算两个datetime之间的增量时间(小时)?,python,pandas,csv,datetime,Python,Pandas,Csv,Datetime,我有两个csv文件,第一个(例如“time.csv”)包含关于ID和特定时间的信息(一个ID一个日期时间信息) 另一个csv文件包含每个ID的其他特性,带有一个小时的时间戳。一个cow可能有几行,我需要创建新的列“deltahour”,它显示“time.csv”上特定ID的当前时间和日期时间之间的差异 我如何使用熊猫来获得这个?谢谢 您可以使用合并然后减去值 df1.datetime=pd.to_datetime(df1.datetime) df2.datetime=pd.to_datetime

我有两个csv文件,第一个(例如“time.csv”)包含关于ID和特定时间的信息(一个ID一个日期时间信息)

另一个csv文件包含每个ID的其他特性,带有一个小时的时间戳。一个cow可能有几行,我需要创建新的列“deltahour”,它显示“time.csv”上特定ID的当前时间和日期时间之间的差异


我如何使用熊猫来获得这个?谢谢

您可以使用
合并
然后减去值

df1.datetime=pd.to_datetime(df1.datetime)
df2.datetime=pd.to_datetime(df2.datetime)

df=df1.merge(df2,on='ID').assign(deltahour=lambda x : x['datetime_x']-x['datetime_y'])
确保datetime列被解析为date后,尝试使用pd.merge

为什么我会得到TypeError:-:“str”和“str”的操作数类型不受支持?
ID     datetime              deltahour
1      2019-05-01 08:00        6
1      2019-05-01 09:00        5
1      2019-05-01 10:00        4
.
.
1      2019-05-01 14:00        0
2      2019-05-02 08:00        4
2      2019-05-02 09:00        3
.
.
2      2019-05-01 12:00        0

df1.datetime=pd.to_datetime(df1.datetime)
df2.datetime=pd.to_datetime(df2.datetime)

df=df1.merge(df2,on='ID').assign(deltahour=lambda x : x['datetime_x']-x['datetime_y'])