时间数据不匹配格式(匹配)

time data does not match format (match)

我收到以下错误:

time data '23-MAY-2019 12:49:08' does not match format '%d-%m-%yyyy %H:%M:%S' (match)

这是我的代码:

dfbaseline['Date'] = pd.to_datetime(dfbaseline['Date'], format='%d-%m-%yyyy %H:%M:%S')

怎么了?

您的日期格式有两个问题。

pd.to_datetime(dfbaseline['Date'], format='%d-%m-%yyyy %H:%M:%S')
                                              ^^^^^^^^
  • %m用于匹配月份的zero-padded十进制数 格式(01 到 12).
  • %y 将匹配没有世纪的年份作为 zero-padded 十进制数 (00, 01, …, 99)

所以你必须改变,

  • %b 以匹配区域设置缩写名称中的 月份(Jan/Feb/Mar 等)
  • %Y 匹配 以十进制数字表示的年份(0001, 0002, …, 2013, 2014, …, 9998, 9999)
pd.to_datetime(dfbaseline['Date'], format='%d-%b-%Y %H:%M:%S')
                                              ^^^^^

strftime() and strptime() Format Codes for more information

您可以在此处查看将 DateTime 格式化为字符串的不同字符 - https://www.ibm.com/docs/en/app-connect/11.0.0?topic=function-formatting-parsing-datetimes-as-strings#:~:text=Characters%20for%20formatting%20a%20dateTime%20as%20a%20string