Формат даты Chnage с пандами питона - PullRequest
0 голосов
/ 29 мая 2018

Итак, у меня есть CSV-файл со следующим форматом даты: 05.Apr.18, то есть dd.mmm.yy в Excel.Я хотел бы прочитать эту дату и преобразовать ее в: 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».

Спасибо за помощь.

1 Ответ

0 голосов
/ 29 мая 2018

Чтобы решить проблему с 01.Mai.18, перед применением to_datetime необходимо заменить немецкое слово Mai на английское May.А для изменения формата необходимо добавить операцию .dt.strftime(date_format='%d.%m.%Y').Следующий код должен решить ваши проблемы, но, поскольку вы не предоставили информацию о том, как выглядит date, возможно, для его работы могут потребоваться небольшие изменения:

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 datetime на object, так как этот формат не является допустимым datetime форматом!Нет абсолютно никакого способа использовать ваш формат как datetime.Но если вы хотите экспортировать его только в Excel, все будет в порядке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...