PythonPandas-如何按某些级别的列进行水平分组聚合?
假设我有以下df:PythonPandas-如何按某些级别的列进行水平分组聚合?,python,pandas,dataframe,Python,Pandas,Dataframe,假设我有以下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
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
?只需将
轴=1
传递给分组比()
,例如:
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
只需将轴=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
另外,
df.sum(axis=1,level=0)
@Wen链接的副本涵盖了两个答案。df.sum(axis=1,level=0)
@Wen链接的副本涵盖了两个答案。