python pandas date_time不将字符串转换为日期格式

h9vpoimq  于 2023-05-21  发布在  Python
关注(0)|答案(2)|浏览(158)

我有Jan-91(mmm-YY)格式的数据。我试图转换是使用pandas date_time函数与代码- data ['Month'] = pd.to_datetime(data ['Month'],format = '%ddd-%YY')然而,得到错误的时间数据'Jan-91'不匹配格式'%ddd-%YY'(匹配)
时间数据“Jan-91”与格式“%ddd-%YY”不匹配(匹配)
我试图期望输出应该是DD-MM_YYYY格式。

yhuiod9q

yhuiod9q1#

你的日期时间格式有点不对而不是%ddd-%YY,它应该是“%B-%y”。也就是说,代码片段应该是:

data['Month'] = pd.to_datetime(data['Month'], format = '%b-%y')

如果你看一下documentation for pandas.to_datetime,在format下,它说它使用strftime语法来获取日期格式。在strftime和strptime格式代码下,您将看到正确的格式代码是%B(表示3个字母的月份缩写)和%y(表示没有世纪的零填充年份)。

gblwokeq

gblwokeq2#

根据Pandas文档,format参数仅用于解析,而不是用于目标格式。因此,要获得所需的输出,您必须首先解析为默认格式,然后使用``生成预期的格式:

data['Month'] = pd.to_datetime(data['Month'])
data['Month'] = data['Month'].dt.strftime('%d-%m_%Y')

相关问题