熊猫:用数据框中的平均值替换重复项

时间:2019-01-11 22:32:41

标签: pandas duplicates aggregate

我一直在使用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()一起应用,然后连接回分类列。所以我正在寻找比我做的要短的解决方案。
当您处理许多分类列时,我的方法变得乏味。

1 个答案:

答案 0 :(得分:0)

您可以使用df.groupby():

df.groupby('country_name').mean().reset_index()