我得到了一个看起来像这样的数据帧:
ID1 STID MUNID YEAR SEX AGE POP
我使用group_by
函数对STID、MUNID、YEAR、SEX和AGE进行分组,得到具有summarise(pop=sum(pop))
的群体的总和。我不能在group_by中使用ID1,因为它会扰乱结果,但我想把它保留在最终的数据帧中。我的替代方案或选项是什么,这样我最终可以保留ID1?
一个选项是paste
"ID1"的值,或者在summarise
中创建一个list
列,然后创建split
或unnest
library(dplyr)
library(tidyr)
df1 %>%
group_by(STID, MUNID, YEAR, SEX, AGE) %>%
summarise(pop = sum(pop), ID1 = list(ID1), .groups = 'drop') %>%
unnest(ID1)