给出下面的列
| 姓名|评分1|评分2|评分3|
| --------------|--------------|--------------|--------------|
| 鲍勃|一百|一百二十|九百|
| 丽莎|四十|一百二十|九十|
| 鲍勃|五九零|四百九十|八十|
| 蒂姆|一百|一百二十|九百|
| 蒂姆|四十|一百二十|九十|
| 鲍勃|五九零|四百九十|八十|
我想为“姓名”列中的每个人计算所有列的平均值。所以对于Bob,我想得到所有9个值的一个平均值。
我知道下面的代码将计算多个列的平均值。如何让它计算所有同名行的平均值?
df['averages'] = df[['Score1', 'Score2', 'Score3']].mean(axis=1)
2条答案
按热度按时间0lvr5msh1#
你可以使用
groupby.apply
和numpy.mean
:或
stack
:或者计算总和并除以单元格的数量:
输出:
olhwl3o22#
另一种可能的解决方案:
输出: