У меня есть файл, который выглядит следующим образом:
E1 32 45 + Apple
E2 54 76 + Apple
...
...
-E2 300 400 + Apple
-E1 540 760 + Apple
E1 560 600 - Orange
E2 340 440 - Orange
...
...
-E2 30 40 - Orange
-E1 20 7 - Orange
Здесь E для каждого уникального значения из последнего столбца может варьироваться от 1 до 100. И последний столбец может go до нескольких тысяч уникальных фруктов. Я хочу оценить среднее значение разности первых E (E1) по каждому уникальному значению последнего столбца.
E1 ((45-32)+(600-560))/2 = 26.5
E2 ((76-54)+(440-340))/2 = 61
Я хочу вычислить E1, E2 и E3, а также -E3, -E2, - E1, где -E1 - последняя E в каждой уникальной записи из последнего столбца, аналогично -E2 и -E3 - вторая и третья последние Es.
Я пытался с помощью groupby из pandas подойти к этой проблеме:
df1.groupby(str(line[4]))[line[2]-line[1]].mean()
Я не знаю, является ли groupby правильным подходом или нет, и мне трудно сделать al oop для этого случая. `