Код: Выделить всё
A B C D E F G H %I J K
W P E 6 0 0 0 0 0% 0 0
W P F 3 0 0 0 0 0% 0 0
W P G 1 0 0 0 0 0% 0 0
X P H 23 2 2 0 0 76% 0 0
X P I 8 0 0 0 0 0% 0 0
X P J 1 0 0 0 0 0% 0 0
X P E 5 2 0 1 0 78% 0 0
X P K 36 0 0 0 0 0% 0 0
X P F 35 5 5 0 0 89% 1 0
X P G 40 9 6 2 1 22% 4 0
X P L 6 1 0 1 0 45% 0 0
[*]промежуточный итог на уровне столбца A, поэтому итоговое значение W и общая сумма X
[*]Общая сумма от D до K
< li>Как рассчитать значение «Общий %»? Я не могу агрегировать сумму или любую другую операцию, так как чувствую, что это не даст мне правильного ответа.
tbl=pd.pivot_table(C,values=['D','E', 'F','G','H','% I','J','K'],index=['A','B','C']
,aggfunc=[{ 'D':np.sum, 'E':np.sum, 'F':np.sum, 'G':np.sum, 'H':np.sum, '% I':np.sum,'J':np.sum,'K':np.sum}]
,fill_value=0,margins=True,margins_name='Total')
Подробнее здесь: https://stackoverflow.com/questions/791 ... ivot-table