如何解决pd.to_datetime 格式错误
我有一个数据框 df
,我想在其中将“时间”列设置为日期时间索引。转换前的列如下所示:
01-10-19 09:05
01-10-19 10:04
01-10-19 11:05
01-10-19 12:04
01-10-19 13:04
...
31-05-20 22:05
31-05-20 23:05
01-06-20 00:05
01-06-20 01:05
01-06-20 02:05
所以我尝试了以下代码行:
df['Time'] = pd.to_datetime(df['Time'],format='%d-%m-%Y %H:%M',errors='coerce')
这导致列中只有 NaT“值”,而没有安装 datetimeindex。我还尝试以多种方式更改格式,例如:'%%dd-%%mm-%%YY %%HH:%%MM'
或 '%d%d-%m%m-%Y%Y %H%H:%M%M'
,但它导致了相同的错误。
当我删除 errors='coerce'
时,我收到消息:ValueError: time data '09:05' does not match format '%d-%m-%Y %H:%M' (match)
。我错过了什么?为什么格式错误,我该如何解决?非常感谢提前!
解决方法
试试这个:
df['Time'] = pd.to_datetime(df['Time'],infer_datetime_format= True)
print(df)
#output:
Time
0 2019-01-10 09:05:00
1 2019-01-10 10:04:00
2 2019-01-10 11:05:00
3 2019-01-10 12:04:00
4 2019-01-10 13:04:00
5 2020-05-31 22:05:00
6 2020-05-31 23:05:00
7 2020-01-06 00:05:00
8 2020-01-06 01:05:00
9 2020-01-06 02:05:00
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。