我有一个df,其中包含时间和另一列中的毫秒,如下所示: Time ms0 14:11:52 01 4:11:52 2501 4:11:52 5001 4:11:52 750我想像这样将毫秒添加到时间中: Time 0 14:11:52 1 4:11:52:2501 4:11:52:5001 4:11:52:750我尝试将两者都转换为datetime[ns]和[D],但我得到以下错误:cannot add DatetimeArray and DatetimeArraytdf['Time'] = pd.to_datetime(df['Time'], format='%H:%M:%S')df['ms'] = pd.to_datetime(df['ms'], format='%f')df['Time'] = df['Time'] + df['ms']我认为通过使用时间增量可以实现我想要的,但是有没有一种更简洁的方法来添加一个日期列和另一个日期列?
2 回答
慕哥9229398
TA贡献1877条经验 获得超6个赞
二to_timedelta
pd.to_timedelta(df.Time)+pd.to_timedelta(df.ms,unit='ms')
Out[72]:
0 14:11:52
1 04:11:52.250000
1 04:11:52.500000
1 04:11:52.750000
dtype: timedelta64[ns]
df['Time']=pd.to_timedelta(df.Time)+pd.to_timedelta(df.ms,unit='ms')
Qyouu
TA贡献1786条经验 获得超11个赞
熊猫的时间修改原理很简单:
datetime - datetime = timedelta datetime + timedelta = datetime
其余的组合根本不起作用,或者至少不像预期的那样。
添加回答
举报
0/150
提交
取消