У меня есть DF Pandas (краткий фрагмент ниже) с именем df
deathtype height deaths
0 AMS 4900 1
1 AMS 5150 1
2 AMS 5300 1
3 Avalanche 5350 14
4 Avalanche 5600 4
5 Avalanche 5700 1
6 Avalanche 5800 17
7 Unexplained 8500 1
8 Unexplained 8560 1
Я пытаюсь преобразовать данные в следующее:
deaths 1 4 14 17
deathtype
AMS 4900,5150,5300 0 0 0
Avalanche 5700 5600 5350 5800
Unexplained 8500, 8560 0 0 0
Я знаю, чтосводная таблица не может этого достичь, поскольку aggfunc использует среднее значение для дублированных значений, что означает, что для всех значений deaths
, равных 1, будет записано среднее значение.Сводная таблица дает мне следующее:
df.pivot_table(index='deathtype', columns='deaths', values='height', fill_value='0')
deaths 1 4 14 17
deathtype
AMS 5116.666667 0 0 0
Avalanche 5700.000000 5600 5350 5800
Unexplained 8530.000000 0 0 0
Я ищу несколько советов о том, как это сделать.Похоже, что сводная таблица не правильный подход здесь.Может кто-нибудь, пожалуйста, укажите несколько указателей.