我正在尝试将字符串转换为'datetime64 [ns]'格式。小时是非零填充的,我想这可能会导致问题。
数据示例:
1 8:49:15
2 8:49:16
3 8:49:17
Name: time, dtype: object
我用来将字符串转换为时间的代码:
dfp['time'] = pd.to_datetime(dfp['time'], format='%H:%M:%S')
我也尝试过:
time_tansformed = []
for t in dfp['time']:
time_i = datetime.datetime.strptime(t, "%H:%M:%S")
time_tansformed.append(time_i)
我得到了同样的错误:
ValueError: time data ' 1:00:00' does not match format '%H:%M:%S' (match)
我在Win10上使用Python 3.5(Anaconda)。
如何将其转换为时间格式? 我应该添加0来填补小时数还是有不同的方式?
答案 0 :(得分:2)
字符串中有一个前导空格:
' 1:00:00'
这样做:
dfp['time'] = pd.to_datetime(dfp['time'].strip(), format='%H:%M:%S')