Как преобразовать эту дату из строки в дату и время в Панд?

#python #pandas #dataframe

Вопрос:

Я пытаюсь извлечь дату и время из строки в фрейме данных pandas. «Дата» ниже указана в строке (DK-locale)

Сообщение Дата Дата преобразована
блабла 9. октябрь 2021 года 11.41 натуральный
блабла 9. окт. 2021 11.38 натуральный
блабла 9. окт. 2021 11.01 натуральный

Моя камера в юпитере, пытающаяся преобразовать, выглядит так:

 import pandas as pd

df = pd.read_csv("messages.csv", sep=",")
df['DateConverted'] = pd.to_datetime(df['Date'], errors='coerce' ,format='%d. %b. %Y %I.%M'
 

Я попробовал несколько вариантов формата, но ничего не дало результатов.
Кто — нибудь знает, чего мне не хватает?

Комментарии:

1. ваш код отлично работает, если okt он находится oct в моей системе. Возможно, вам захочется убедиться, что ваш язык настроен правильно.

Ответ №1:

Вы можете попробовать:

 >>> import locale
>>> locale.setlocale(locale.LC_ALL, 'da_DK')
'da_DK'
>>>
>>> df['DateConverted'] = pd.to_datetime(df['date'], format='%d. %b. %Y %I.%M')
>>>
>>> df
  Message                date       DateConverted
0  blabla  9. okt. 2021 11.41 2021-10-09 11:41:00
1  blabla  9. okt. 2021 11.38 2021-10-09 11:38:00
2  blabla  9. okt. 2021 11.01 2021-10-09 11:01:00
>>>
>>> df.dtypes
Message                  object
date                     object
DateConverted    datetime64[ns]
dtype: object