I have an irregular sampled timeseries
event
Time
2013-01-01 01:40:53.072 n
2013-01-01 01:41:25.563 e
2013-01-01 01:51:23.293 e
2013-01-01 01:57:14.168 e
2013-01-01 01:58:07.273 e
2013-01-01 02:05:36.250 e
2013-01-01 02:35:08.501 e
2013-01-01 02:37:36.498 e
2013-01-01 03:22:15.091 e
2013-01-01 03:35:58.140 e
2013-01-01 03:39:47.682 e
2013-01-01 04:22:18.756 e
2013-01-01 04:33:08.892 e
2013-01-01 04:43:17.985 n
2013-01-01 04:49:49.281 e
2013-01-01 05:10:26.957 e
2013-01-01 05:17:15.411 e
2013-01-01 06:11:15.033 e
2013-01-01 06:46:36.406 e
2013-01-01 07:26:00.488 e
and I would like to calculate the cumulative elapsed time between each event n
.
There is a similar asked question (Pandas time series time between events), but i'm unable to adapt the solution to my problem since the irregular timeindex. My attempt is to using df1['diff']=df1.groupby('event_bool')['event_time'].diff()
obtaining something like this:
event event_bool diff
Time
2013-01-01 01:40:53.072 n True NaT
2013-01-01 01:41:25.563 e False NaT
2013-01-01 01:51:23.293 e False 00:09:57.730000
2013-01-01 01:57:14.168 e False 00:05:50.875000
2013-01-01 01:58:07.273 e False 00:00:53.105000
2013-01-01 02:05:36.250 e False 00:07:28.977000
2013-01-01 02:35:08.501 e False 00:29:32.251000
2013-01-01 02:37:36.498 e False 00:02:27.997000
2013-01-01 03:22:15.091 e False 00:44:38.593000
2013-01-01 03:35:58.140 e False 00:13:43.049000
2013-01-01 03:39:47.682 e False 00:03:49.542000
2013-01-01 04:22:18.756 e False 00:42:31.074000
2013-01-01 04:33:08.892 e False 00:10:50.136000
2013-01-01 04:43:17.985 n True NaT
2013-01-01 04:49:49.281 e False 00:16:40.389000
2013-01-01 05:10:26.957 e False 00:20:37.676000
2013-01-01 05:17:15.411 e False 00:06:48.454000
2013-01-01 06:11:15.033 e False 00:53:59.622000
2013-01-01 06:46:36.406 e False 00:35:21.373000
2013-01-01 07:26:00.488 e False 00:39:24.082000
However I have the following unresolved issues:
- There is a NaT for the first event
e
aftern
. The result should be `00:00:32.491000`` - Ho to cumulatively sum the elapsed time between
n
events?