问题描述
这是我的df:
col1 col2
1 a 20%
2 b 20%
3 c 15%
4 d 10%
5 e 9%
6 f 8%
7 g 7%
8 h 6%
9 h 5%
我想吃点这样的东西
col1 col2
1 a 20%
2 b 20%
3 c 15%
4 d 10%
5 other 35%
解决方法
您可以在forcats软件包中使用fct_collapse()
。
library(tidyverse)
df <- tribble(
~col1,~col2,"a",20,"b","c",15,"d",10,"e",9,"f",8,"g",7,"h",6,5
)
df$col1 <- fct_collapse(
df$col1,a = "a",b = "b",c = "c",d = "d",other_level = "other")
df %>%
group_by(col1) %>%
summarise(col2 = sum(col2))