首页 > 解决方案 > R中另一列中的分组函数

问题描述

我有 2 个关于 R 中数据框中的组的问题。

想象一下我有一个像这样的数据框(df)

| CONT | COUNTRY | GDP | AVG_GDP |
|------|---------|-----|---------|
| AF   | EGYPT   | 3   | 2       |
| AF   | SUDAN   | 2   | 2       |
| AF   | ZAMBIA  | 1   | 2       |
| AM   | CANADA  | 4   | 5       |
| AM   | MEXICO  | 2   | 5       |
| AM   | USA     | 9   | 5       |
| EU   | FRANCE  | 5   | 4       |
| EU   | ITALY   | 4   | 4       |
| EU   | SPAIN   | 3   | 4       |

如何计算各大洲的 GDP 平均值,然后将其放入 AVG_GDP 列中,使其如上表所示?

第二个问题是如何按大洲对 GDP 求和,所以它看起来像这样:

| CONT | SUM_GDP |
|------|---------|
| AF   | 6       |
| AM   | 15      |
| EU   | 12      |

对于最后一个问题,我认为在基础 R 中,第二列将通过类似的方式获得,df$SUM_GDP <- aggregate(df$GDP, by=list(df$CONT), FUN=sum)但也许还有另一种方法可以在新的数据框中实现它。

先感谢您

标签: rdataframe

解决方案


推荐阅读