2017-05-14 12 views
2

私は、次のデータフレームを持っている:オブジェクトを時間に変換して日付に追加するには?

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'] 

iは時間として補正を変換し、これまでにそれを追加します。私は次のコードを試しましたが、エラーが発生します。

df['correction'] = pd.to_timedelta(df['correction'],unit='h') 
df['date'] =pd.DatetimeIndex(df['date']) 
df['date'] = df['date'] + df['correction'] 

私としてはtimedeltaに補正を変換する際にエラーが出る:私にとって

ValueError: no units specified 

答えて

1

floatcorrectionにキャストを動作します:

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 
+0

感謝!!それは動作します –

+0

喜んで助けることができます!素敵な週末! – jezrael

+1

@Irisこの回答を受け入れることを忘れないでください:-) – piRSquared

関連する問題