2017-03-08 6 views
-1

文字列に時間があり、15分を追加して2回の文字列形式の違いを探したいとします。パンダを使用して文字列形式で時間を15分追加する方法

example: 
------- 

16:30(16.30 + 15) 16:36 
12.30(12:30 + 15) 12:35 
11.15(11:15 + 15) 11.:16 

o/p: 
--- 
9 
10 
14 

print (df['end'] + pd.DateOffset(minutes =15)) 

が、私はfolloエラーを取得しています:

TypeError: cannot concatenate 'str' and 'datetime.timedelta' objects 

私はto_datetime formTatを使用していていても。

それでは、どのように私は15 miutesを追加し、あなたが使用できる文字列形式で時間

答えて

0

にdiffernceを見つけることができます。

df['a'] = (pd.to_datetime(df['a'], format='%H:%M') + pd.DateOffset(minutes =15)) 
df['b'] = (pd.to_datetime(df['b'], format='%H:%M')) 

print (df) 
        a     b 
0 1900-01-01 16:45:00 1900-01-01 16:36:00 
1 1900-01-01 12:45:00 1900-01-01 12:35:00 
2 1900-01-01 11:30:00 1900-01-01 11:16:00 

print (df['a'] - df['b']) 
0 00:09:00 
1 00:10:00 
2 00:14:00 
dtype: timedelta64[ns] 


print ((df['a'] - df['b']).dt.seconds/60) 
0  9.0 
1 10.0 
2 14.0 
dtype: float64 

print ((df['a'] - df['b']).astype('timedelta64[m]')) 
0  9.0 
1 10.0 
2 14.0 
dtype: float64 
+0

私は、次のエラーを取得しています。 AttributeError: 'Timedelta'オブジェクトには属性 'dt'がありません – user99

+0

Hmmm、 'print((df ['a'] - df ['b']))astype( 'timedelta64 [m]'))' – jezrael

関連する問題