我有以下数据框:
correction = ['2.0','-2.5','4.5','-3.0']
date = ['2015-05-19 20:45:00','2017-04-29 17:15:00','2011-05-09 10:40:00','2016-12-18 16:10:00']
我想将更正转换为小时并将其添加到日期中。我尝试了以下代码,但出现错误。
df['correction'] = pd.to_timedelta(df['correction'],unit='h')
df['date'] =pd.DatetimeIndex(df['date'])
df['date'] = df['date'] + df['correction']
将校正转换为时间增量时出现错误:
ValueError: no units specified
最佳答案
对我来说,作品转换为float
列更正
:
df['correction'] = pd.to_timedelta(df['correction'].astype(float),unit='h')
df['date'] = pd.DatetimeIndex(df['date'])
df['date'] = df['date'] + df['correction']
print (df)
correction date
0 02:00:00 2015-05-19 22:45:00
1 -1 days +21:30:00 2017-04-29 14:45:00
2 04:30:00 2011-05-09 15:10:00
3 -1 days +21:00:00 2016-12-18 13:10:00
关于pandas - 如何将对象转换为小时并添加到日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43962123/