Muestreo de series de tiempo con un timedelta dado
Estoy usando Pandas para estructurar y procesar datos. Este es mi DataFrame:
Quiero hacer un nuevo muestreo de datos de series temporales y, para cada ID (nombrado aquí "3"), todas las puntuaciones de bitrate, de principio a fin (begin_time / end_time). Por ejemplo, para la primera fila, quiero tener todos los segundos, desde 2016-07-08 02:17:42 hasta 2016-07-08 02:17:55, con el mismo puntaje de bitrate y la misma ID, por supuesto. . Algo como esto :
Por ejemplo, dado:
df = pd.DataFrame(
{'Id' : ['CODI126640013.ts', 'CODI126622312.ts'],
'beginning_time':['2016-07-08 02:17:42', '2016-07-08 02:05:35'],
'end_time' :['2016-07-08 02:17:55', '2016-07-08 02:26:11'],
'bitrate': ['3750000', '3750000']})
lo que da :
Y quiero tener para la primera fila:
Lo mismo para la fila secend. Entonces, el objetivo es volver a muestrear el deltaTime entre el comienzo y el final, el puntaje de bitrate debe ser el mismo, por supuesto.
Estoy intentando este código:
df['new_beginning_time'] = pd.to_datetime(df['beginning_time'])
df.set_index('new_beginning_time').groupby('Id', group_keys=False).apply(lambda df: df.resample('S').ffill()).reset_index()
Pero en este contexto, ¡no funcionó! Algunas ideas ? Muchas gracias !