将值替换为平均值
问题描述
我有一个数据帧,如下所示:
Col1 Price
1 Plastic 50
2 Metal 100
3 Plastic 40
我想用它们在Price中的平均值替换col1中的值,因此我得到:
Col1 Price
1 45 50
2 100 100
3 45 40
我已经这样做了:
df.groupby('Col1').mean()['Price']
但是我不知道如何替换这些值,也许可以使用map?
解决方案
您是对的-map
可以这样做:
df['Col1'] = df['Col1'].map(df.groupby('Col1')['Price'].mean())
df
Col1 Price
1 45 50
2 100 100
3 45 40
相关文章