python pandas 改变数据显示样子 5C

源数据

date    c   num1    num2
1   a1  55  2920
2   a1  42  4093
3   a1  5   1205
1   a2  556 46145
2   a2  1   2980
3   a2  0   1273
1   a3  589 5525
2   a3  65  46205
3   a3  102 2770

pd.pivot_table(df, values=['num1', 'num2'], index=['date'],columns=['c'], aggfunc={'num1': np.sum,'num2': np.sum}, fill_value=0)后变成下边的样子

    num1        num2        
c   a1  a2  a3  a1  a2  a3
date                        
1   55  556 589 2920    46145   5525
2   42  1   65  4093    2980    46205
3   5   0   102 1205    1273    2270

我想变成下边这个样子需要怎么做?

            a1                      a2                      a3  
date    num1    num2    num1    num2    num1    num2
1   55  2920    556 46145   589 5525
2   42  4093    1   2980    65  46205
3   5   1205    0   1273    102 2270

谢谢楼下两位朋友,不过试了一下会有错误

不过我已经用别的方式实现了
实现方式如下:
df = df.swaplevel(1,0, axis=1).sort_index(axis=1)

2个回答

使用dataframe 的groupby方法

df = df.groupby(df['c'])

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐