我的数据透视表有两个级别的列(级别1:成人与孩子,级别2:男性与女性)
对于成年人,我想折叠级别2。如何将数据透视表1转换为表2?
数据透视表1(当前输出)
Adults_____ Kids_______
Male Female Male Female
Count 5 5 12 8
数据透视表2(所需输出)
Adults Kids_______
Male Female
Count 10 12 8
我尝试了以下返回KeyError的方法。
df = df[[('Adults'),('Kids','Male'),('Kids','Female')]]
最佳答案
您可以使用sum
,然后使用drop
原始列Adults_____
:
print df
Adults_____ Kids_______
Male Female Male Female
Count 5 5 12 8
df['Adults'] = df['Adults_____'].sum(axis=1)
df = df.drop('Adults_____', axis=1)
df = df[['Adults','Kids_______']]
print df
Adults Kids_______
Male Female
Count 10 12 8
关于python - 在Python Pandas数据透视表中对列进行分组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36812800/