我有一个包含列的数据框:
cols = ['A', 'B', 'C']
如果我按一列分组,比如“A”,就像这样:
df.groupby('A')['B'].mean()
有效。
但我需要对一列进行分组,然后获取所有其他列的平均值。我试过:
df[cols].groupby('A').mean()
但是我得到了错误:
KeyError: 'A'
我错过了什么?
最佳答案
请尝试:
df.groupby('A').agg('mean')
样本数据
B C A
0 1 4 K
1 2 6 S
2 4 7 K
3 6 3 K
4 2 1 S
5 7 3 K
6 8 9 K
7 9 3 K
print(df.groupby('A').agg('mean'))
B C
A
K 5.833333 4.833333
S 2.000000 3.500000
关于 Pandas - 按一列分组并获取所有其他列的平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66038978/