%in%
- проверка того, является ли значение членом набора, поэтому здесь не следует его использовать.Вам нужно between()
.
ratio2016 <- ratio2016 %>%
mutate(percent_group = case_when(
between(percapita, 0.05, 0.1) ~ "0.05-0.1",
between(percapita, 0.1, 0.5) ~ "0.1-0.5",
between(percapita, 0.5, 1) ~ "0.5-1.0",
between(percapita, 1, 1.5) ~ "1.0-1.5",
between(percapita, 1.5, 2) ~ "1.5-2.0"))
Это даст вам ваш столбец.
Кстати, вы можете сделать это в меньшем количестве кода с помощью cut()
:
ratio2016 %>% mutate(percent_group =
cut(percapita, c(0.05, 0.1, 0.5, 1, 1.5, 2),
labels = c("0.05-0.1","0.1-0.5", "0.5-1.0", "1.0-1.5", "1.5-2.0"))
)