У меня есть фрейм данных со столбцом, который состоит из значений даты и времени, один из которых состоит из значений скорости, а другой состоит из значений timedelta между строками.
Я хотел бы получить кумулятивную сумму timedeltasвсякий раз, когда скорость ниже 2 узлов. Когда скорость поднимается выше 2 узлов, я хотел бы, чтобы эта накопленная сумма была сброшена до 0, а затем началось суммирование при следующем наблюдении скорости ниже 2 узлов.
Я начал с пометки всех наблюдений скоростизначения <2. Мне удается получить только совокупную сумму для всех наблюдений со скоростью <2, но не накопленную сумму, выделенную для каждого экземпляра. </p>
Фрейм данных выглядит следующим образом, а cum_sum
- этожелаемый вывод:
datetime speed timedelta cum_sum flag
1-1-2019 19:30:00 0.5 0 0 1
1-1-2019 19:32:00 0.7 2 2 1
1-1-2019 19:34:00 0.1 2 4 1
1-1-2019 19:36:00 5.0 2 0 0
1-1-2019 19:38:00 25.0 2 0 0
1-1-2019 19:42:00 0.1 4 4 1
1-1-2019 19:49:00 0.1 7 11 1