#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