所以我有一个csv文件,其日期格式如下:05.Apr.18,即Excel中的dd.mmm.yy。 我想阅读这个日期并将其转换为:05.04.18。
我的python代码如下:
date= pd.read_csv(csv_data, header=None, sep=';', skiprows=97, usecols=[0])
change_date= pd.to_datetime(date[0], errors='coerce')
这段代码非常有效,直到我尝试阅读01.Mai.18并且它显示我“NaT”。此外,使用实际代码,显示的日期格式为“2018-04-05”而不是“05.04.18”。
感谢您的帮助。
答案 0 :(得分:0)
要解决01.Mai.18
问题,您需要在应用Mai
之前将德语单词May
替换为英语to_datetime
。要更改格式,您需要附加操作.dt.strftime(date_format='%d.%m.%Y')
。以下代码可以解决您的问题,但由于您未提供有关date
的内容的信息,因此可能需要进行少量更改才能使用DataFrame
:
date.replace('Mai', 'May', inplace=True)
change_date = pd.to_datetime(date[0], errors='coerce').dt.strftime(date_format='%d.%m.%Y')
但是 .dt.strftime(date_format='%d.%m.%Y')
将dtype
的{{1}}更改为datetime
,因为此格式不是有效的object
格式!绝对无法将您的格式用作datetime
格式。但只要您只想将其导出到Excel,这应该没问题。