假设我有以下df:
df = pd.DataFrame({('A1','B1'):range(0,5),
('A1','B2'):range(1,6),
('A2','B1'):range(2,7),
('A2','B2'):range(3,8),})
A1 A2
B1 B2 B1 B2
0 1 2 3
1 2 3 4
2 3 4 5
3 4 5 6
4 5 6 7
如何对列的第一级进行分组并汇总每一行和每一组中各列的值,并生成:
A1 A2
1 5
3 7
5 9
7 11
9 13
?
答案 0 :(得分:1)
只需将axis=1
传递到groupby()
,例如:
In []:
df.groupby(axis=1, level=0).sum()
Out[]:
A1 A2
0 1 5
1 3 7
2 5 9
3 7 11
4 9 13