Мне интересно, есть ли в Pandas какие-то встроенные функции, позволяющие брать случайные промежутки времени (примерно часы) и преобразовывать их в стандартные часы. Пример кода и нерабочая попытка:
import pandas as pd
df = pd.DataFrame({'start': ['2018-09-04 01:12', '2018-09-04 02:11'],
'end' : ['2018-09-04 02:10','2018-09-04 03:20'],
'val' : [500, 600]})[['start','end','val']]
df[['start','end']] = df[['start','end']].apply(pd.to_datetime)
дает нам:
start end val
2018-09-04 01:12 2018-09-04 02:10 500
2018-09-04 02:11 2018-09-04 03:20 600
и
df = df.resample('1H', on = 'start', ).reset_index()
в идеале (но не) дает:
start end val
2018-09-04 01:00 2018-09-04 01:59 406.78
2018-09-04 02:00 2018-09-04 02:59 513.22
2018-09-04 03:00 2018-09-04 03:59 180.00
Я мог бы написать какой-нибудь хак для этой работы, но подумал, что у Панд есть какая-то простая функция, которая делает это.