Суммарные значения для второго уровня мультииндекса в панде - PullRequest
1 голос
/ 27 июня 2019

У меня есть панда DataFrame с мультииндексом 'County ID' и 'County'. Существует столбец 'Workforce', и мне нужно сложить все значения в столбце, а затем добавить его в другой столбец в DataFrame, но мне нужно сложить только значения на каждом уровне. Однако я не смог заставить панд суммировать таким образом.

Я пробовал много разных вещей, включая создание других DataFrame s для суммирования каждого индекса и повторного добавления к другому DataFrame. Я также пробовал циклы, но не смог суммировать все значения в столбце вместе.

Мой фрейм данных выглядит так: enter image description here

*COUNTY ID*   *COUNTY*             INDUSTRY  WORKFORCE  TOTAL WORKFORCE
12001      |  Alachua County, FL    Retail     25329        0
           |  Alachua County, FL    Health     22914        0
8013       |  Boulder County, CO    Education  24123        0
           |  Boulder County, CO    Finance    19478        0
# And so on in that manner 

'TOTAL WORKFORCE' - это фиктивный столбец, который я добавил как int64, чтобы я мог поместить в него числовое значение как результат необходимой мне суммы.

Я хочу взять все подсчеты рабочей силы и сложить их в каждом округе, чтобы это выглядело так:

*COUNTY ID*   *COUNTY*             INDUSTRY  WORKFORCE  TOTAL WORKFORCE
12001      |  Alachua County, FL    Retail     25329        48243
           |  Alachua County, FL    Health     22914        48243
8013       |  Boulder County, CO    Education  24123        43601
           |  Boulder County, CO    Finance    19478        43601

Любая помощь будет большой благодарностью!

1 Ответ

0 голосов
/ 27 июня 2019

A groupby на level=0 и преобразование с sum должно сделать:

df['TOTALWORKFORCE'] = df.groupby(level=0).WORKFORCE.transform('sum')
...