Pandas MultiIndex Dataframe to Excel |第二个索引作为列名

时间:2018-06-08 07:25:35

标签: python pandas numpy

示例数据框:

import pandas as pd
idx = pd.MultiIndex.from_product([['Microsoft', 'Google', 'Apple'],
                                  ['OS', 'Web']],
                                 names=['Brand', 'Metric'])
col = ['Count']

df = pd.DataFrame(10, idx, col)
df

数据看起来像这样

enter image description here

当我将其下载为csv时,它会像

一样下载
df.to_csv('example.csv')

enter image description here

我的要求是将此数据下载为数据透视表,我无法找到任何方法将第二个索引作为列名移动,所需的数据输出如下所示

enter image description here

1 个答案:

答案 0 :(得分:2)

我认为需要通过unstack重新编写DataFrame,并将一些数据清理到csv

df['Count'].unstack().rename_axis(None).rename_axis(None, axis=1).to_csv('example.csv')

<强>详细

print (df['Count'].unstack().rename_axis(None).rename_axis(None, axis=1))
           OS  Web
Apple      10   10
Google     10   10
Microsoft  10   10