首页 > 解决方案 > pd.to_datetime 错误 ValueError: '-' is a bad directive

问题描述

嗨我正在尝试转换26-01-2019 16:04:04.85

我正在使用的代码是pd.to_datetime(time, format="%d-%m-%Y %I:%M:%-s")

输出是ValueError: '-' is a bad directive in format '%d-%m-%Y %I:%M:%-s'

是空格还是连字符把它扔掉了?

标签: pandasdatetime

解决方案


更改%H小时和%f微秒的格式,另请检查http://strftime.org/

df = pd.DataFrame({'date':['26-01-2019 16:04:04.85','26-01-2019 16:04:04.8']})

df['date'] = pd.to_datetime(df['date'], format="%d-%m-%Y %H:%M:%S.%f")
print (df)
                     date
0 2019-01-26 16:04:04.850
1 2019-01-26 16:04:04.800

print (df.dtypes)
date    datetime64[ns]
dtype: object

推荐阅读