首页 > 解决方案 > 将数据的平均值插入新列

问题描述

我想获得猎鹰和鹦鹉的平均值并插入新的“平均值”列。两只猎鹰的平均值应该相同,鹦鹉也一样。

对不起,我尝试用谷歌搜索这种东西,阅读文档但仍然无法弄清楚:(

df = pd.DataFrame({'Animal': ['Falcon', 'Falcon','Parrot', 'Parrot'], 'Max 
Speed': [380., 370., 24., 26.]})
print (df)

df['Mean'] = df.groupby(['Animal']).mean()

print (df)

Animal  Max Speed
0  Falcon      380.0
1  Falcon      370.0
2  Parrot       24.0
3  Parrot       26.0

   Animal  Max Speed  Mean
0  Falcon      380.0   NaN
1  Falcon      370.0   NaN
2  Parrot       24.0   NaN
3  Parrot       26.0   NaN

标签: python

解决方案


我想你正在寻找:

df['mean'] = df.groupby('Animal')['Max Speed'].mean()

也可能值得在这里查看变量命名约定:https ://www.python.org/dev/peps/pep-0008/


推荐阅读