如何在R中使用group by按指定字段分组汇总数据?
实现按Party分组汇总Votes的正确方案
原有代码问题
你提交的代码存在两个问题:
- 未指定聚合函数:
summarise()需要搭配具体的聚合计算函数,要计算总和需要调用sum() - 列名拼写错误:原始数据的投票列名为
Votes,不是你代码里写的Votos
正确实现代码
dplyr 实现(适配你原有写法的dplyr方案:
library(dplyr) data <- data %>% group_by(Party) %>% summarise(Votes = sum(Votes, na.rm = TRUE))
其中na.rm = TRUE是可选参数,开启后如果数据存在空值会自动忽略,避免计算结果返回NA。
基础R实现(无需加载第三方包):
result <- aggregate(Votes ~ Party, data = data, FUN = sum)
两种写法运行后都能得到你需要的汇总结果:
| Party | Votes |
|---|---|
| DM | 90 |
| RP | 110 |
内容的提问来源于stack exchange,提问作者Clara。
相关产品推荐
相关产品推荐

