dem = c("Not str democrat", "Strong democrat") )) %>% count(partyid) #> # A tibble: 4 × 2 #> partyid n #>
有时你只是想把所有的小组合并在一起,让图或表更简洁。这正是 fct_lump() 的功能:
gss_cat %>% mutate(relig = fct_lump(relig)) %>% count(relig) #> # A tibble: 2 × 2 #> relig n #>
默认行为是逐步合并最小的组,并确保合并后的聚合组仍然是最小的组。在这个例子中,这样做并没有太大帮助:确实,这次调查中的大多数美国人是新教徒(Protestant),但我们可能合并得过度了。
相反,我们可以使用 n 参数来指定想要保留多少个组(不包括 other):
gss_cat %>% mutate(relig = fct_lump(relig, n = 10)) %>% count(relig, sort = TRUE) %>% print(n = Inf) #> # A tibble: 10 × 2 #> relig n #>