我一直在使用Pandas中的数据框,该数据框在列中包含重复项以及非重复项。数据框看起来像这样:
country_name values category
0 country_1 10 a
1 country_2 20 b
2 country_1 50 a
3 country_2 10 b
4 country_3 100 c
5 country_4 10 d
我想写一些东西来转换(替换)重复项并在我的数据框中使用其平均值。理想的输出将类似于以下内容:
country_name values category
0 country_1 30 a
1 country_2 15 b
2 country_3 100 c
3 country_4 10 d
我已经为此苦苦挣扎了一段时间,因此我将不胜感激。
对不起。我忘了添加类别列。您现在在调用groupby()
时遇到的mean()
方法存在问题,它不会将category
列返回给我。我的解决方案是采用数字列,并且该列具有重复项,将groupby().mean()
一起应用,然后连接回分类列。所以我正在寻找比我做的要短的解决方案。
当您处理许多分类列时,我的方法变得乏味。
答案 0 :(得分:0)
您可以使用df.groupby():
df.groupby('country_name').mean().reset_index()