pd.to_datetime неправильный формат

У меня есть фрейм данных df, где я хочу установить для столбца «Время» значение datetimeindex. Столбец перед преобразованием выглядит так:

01-10-19    09:05
01-10-19    10:04
01-10-19    11:05
01-10-19    12:04
01-10-19    13:04
            ...  
31-05-20    22:05
31-05-20    23:05
01-06-20    00:05
01-06-20    01:05
01-06-20    02:05

Итак, я попробовал следующую строку кода:

df['Time'] = pd.to_datetime(df['Time'], format='%d-%m-%Y    %H:%M', errors='coerce')

Это приводит к тому, что в столбце отображаются только значения NaT, без установки datetimeindex. Я также пытался изменить формат несколькими способами, например: '%%dd-%%mm-%%YY %%HH:%%MM' или '%d%d-%m%m-%Y%Y %H%H:%M%M', но это привело к той же ошибке. Когда я удаляю errors='coerce', я получаю сообщение: ValueError: time data '09:05' does not match format '%d-%m-%Y %H:%M' (match). Что мне не хватает? Почему это неправильный формат и как это исправить? Большое спасибо заранее!


person Tijmen Stronks    schedule 17.03.2021    source источник
comment
Вы уверены, что это одна колонка? Ошибка, которую вы получаете, предполагает, что дата и время указаны в отдельных столбцах.   -  person user1558604    schedule 18.03.2021
comment
Вы правы, очевидно, у фрейма данных уже есть индекс, который действительно является столбцом даты. Ошибка новичка ... Но исправила, спасибо!   -  person Tijmen Stronks    schedule 18.03.2021


Ответы (1)


Попробуй это:

df['Time'] = pd.to_datetime(df['Time'], infer_datetime_format= True)
print(df)

#output:
                 Time
0 2019-01-10 09:05:00
1 2019-01-10 10:04:00
2 2019-01-10 11:05:00
3 2019-01-10 12:04:00
4 2019-01-10 13:04:00
5 2020-05-31 22:05:00
6 2020-05-31 23:05:00
7 2020-01-06 00:05:00
8 2020-01-06 01:05:00
9 2020-01-06 02:05:00
person pakpe    schedule 18.03.2021