Я хочу преобразовать 5-минутные интервалы - целые числа - в формат времени.Pandas: конвертировать временные интервалы целых чисел в раз
Например, ниже, 0 интервал должен стать 00:00, интервал 5 должен стать 00:05 и т.д.
date interval
2012-10-01 0
2012-10-01 5
2012-10-01 10
2012-10-01 15
2012-10-01 20
2012-10-01 25
2012-10-01 30
2012-10-01 35
2012-10-01 40
Я думал, что следующее будет работать:
df['interval'] = pd.to_datetime(df['interval'], format='%H:%M').dt.hour
Но он возвращает эту ошибку:
time data 0 does not match format '%H:%M' (match)
Это логично, но оставляет меня неясным, как отформатировать аргумент формата to.datetime
. Я ничего не вижу в pandas documentation, который помогает.
Update
К сожалению, я не могу получить любой из них, чтобы работать с моим фактическим DataFrame. Я должен добавить дополнительную информацию о том, что переменная interval
работает от 0 до 2355 снова и снова. Переменная имеет 17 568 строк значений от 0 до 2355.
@padraig с обеих ваших ответов я получаю эту ошибку:
ValueError: hour must be in 0..23
Непонятно из вашего примера, что ваш интервал был форматом HHMM. Я пересмотрел свое решение, чтобы оно работало с вашими данными. – Alexander