Multi index Pandas датафрейм и экспорт в Excel - PullRequest
0 голосов
/ 07 апреля 2020

У меня есть этот мультииндексный фрейм данных:

                Value
                Year    2010    2011    2012    2013    2014    2015    2016    2017    2018
Partner Product Reporter                                    
FRA         111   ARG   0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.0
                  ARM   0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.0
                  AUT   0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.0
                  BEL   0.01    0.00    0.00    0.00    0.00    0.01    0.01    0.01    0.0
                  BGR   0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.0
                  CAN   0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.0
            112   ARG   0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.0
                  ARM   0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.0
                  AUT   0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.0
                  BEL   0.01    0.00    0.00    0.00    0.00    0.01    0.01    0.01    0.0
                  BGR   0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.0
                  CAN   0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.0   
... ... ... ... ... ... ... ... ... ... ...
            9900  OMN   0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.0
                  PAK   0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.0
                  PAN   0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.0
                  PER   0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.0
                  PHL   0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.0

Включает 1 элемент в столбце «Партнер» и 444 элемента в столбце «Продукт» (все эти элементы включены в список под названием «Продукты»). ). Мне нужно создать 444 кадра данных (может быть, для цикла) для любого продукта и сохранить их в файле Excel (лучше, если кто-либо на разных листах). Вы можете мне помочь?

1 Ответ

0 голосов
/ 07 апреля 2020

Идея в том, чтобы использовать ExcelWriter и создавать новые листы в l oop с помощью groupby:

with pd.ExcelWriter('output.xlsx') as writer:  
    for i, g in df.sort_index(level=1, ascending=False).groupby(level=1, sort=False):
        g.to_excel(writer, sheet_name=f'Sheet_name_{i}')
...