在R语言中如何基于省份和年份列对人口列求和
解决按省份和年份汇总人口的问题
你的代码问题出在group_by的参数上——你把Population也加入了分组条件,这会让程序按每个单独的人口数值分组,而不是按省份和年份合并求和,自然得不到正确的汇总结果。
正确代码
count_province <- df %>% group_by(Geography, Year) %>% summarise(prov_pop = sum(Population), .groups = "drop")
说明
- 只保留
Geography(省份)和Year(年份)作为分组依据,这样同一省份同一年的所有行会被合并 sum(Population)对分组内的人口数值求和,得到该省份当年的总人口.groups = "drop"是可选参数,用来取消结果的分组状态,让输出变成普通数据框;如果需要保留分组结构,可以去掉这个参数
运行这段代码后,你会得到正确的汇总结果:AB省2000年总人口为87540(45320+42220),ON省2001年总人口为102652(51230+51422)。
内容的提问来源于stack exchange,提问作者bramos95
相关产品推荐
相关产品推荐

