У меня есть следующий фрейм данных:
+--------+----------+----------------------------+---------------------+---------------------+----------+
| Device | Category | Event | Start Time | End Time | Duration |
+--------+----------+----------------------------+---------------------+---------------------+----------+
| WTG22 | State | Windturbine NO COMMUNICATE | 2019-06-26 12:23:46 | 2019-06-26 13:42:54 | 1:19:08 |
| WTG22 | State | Windturbine PAUSE | 2019-06-26 12:23:46 | 2019-06-26 13:42:54 | 1:19:08 |
| WTG22 | State | Windturbine NO COMMUNICATE | 2019-06-26 12:23:47 | 2019-06-26 13:42:54 | 1:19:07 |
| WTG22 | State | Windturbine EMERGENCY | 2019-06-26 12:23:47 | 2019-06-26 12:24:09 | 0:00:22 |
| WTG22 | State | Windturbine EMERGENCY | 2019-06-26 12:23:47 | 2019-06-26 12:24:11 | 0:00:24 |
| WTG22 | State | Windturbine NO COMMUNICATE | 2019-06-26 12:24:11 | 2019-06-26 13:42:55 | 1:18:44 |
+--------+----------+----------------------------+---------------------+---------------------+----------+
Мне нужен столбец продолжительности, чтобы учесть перекрывающиеся времена. Событие должно иметь продолжительность, только если время окончания больше каждого времени окончания, которое ему предшествовало:
+----------+
| Duration |
+----------+
| 1:19:08 |
| 0:00:00 |
| 0:00:00 |
| 0:00:00 |
| 0:00:00 |
| 0:00:01 |
+----------+