У меня есть следующий pandas dataframe
index key start end nozzle tank
0 2018-01-01 02:00:01 - 02:30:00_1_1 2000 2003 1 1
1 2018-01-01 02:00:01 - 02:30:00_1_1 2003 2006 1 1
2 2018-01-01 02:00:01 - 02:30:00_1_1 2006 2008 1 1
3 2018-01-01 02:00:01 - 02:30:00_1_1 2008 2010 1 1
4 2018-01-01 02:00:01 - 02:30:00_1_1 2010 2012 1 1
5 2018-01-01 02:00:01 - 02:30:00_1_2 2002 2009 2 1
6 2018-01-01 02:00:01 - 02:30:00_1_2 2009 2011 2 1
7 2018-01-01 02:00:01 - 02:30:00_1_2 2011 2013 2 1
8 2018-01-01 02:00:01 - 02:30:00_1_2 2013 2015 2 1
9 2018-01-01 03:30:01 - 04:00:00_1_3 2020 2022 3 1
Теперь я хочу взять первое и последнее наблюдение за каждым ключом и найти разницу, где есть только одно наблюдение ключа, оно должно вычислить разницу между end - start
того же наблюдения.
расчет for nozzle 1 = 2012-2000 = 12
nozzle 2 = 2015-2002 = 13
Мой желаемый кадр данных будет
index key nozzle_1 nozzle_2 nozzle_3
0 2018-01-01 02:00:01 - 02:30:00_1_1 12 0 0
1 2018-01-01 02:00:01 - 02:30:00_1_2 0 13 0
2 2018-01-01 03:30:01 - 04:00:00_1_3 0 0 2