Я хотел бы использовать findInterval()
здесь:
Сначала создайте некоторые данные образца
set.seed(1)
ages <- floor(runif(20, min = 20, max = 50))
ages
# [1] 27 31 37 47 26 46 48 39 38 21 26 25 40 31 43 34 41 49 31 43
Используйте findInterval()
, чтобы классифицировать ваш вектор «age».
findInterval(ages, c(20, 30, 40))
# [1] 1 2 2 3 1 3 3 2 2 1 1 1 3 2 3 2 3 3 2 3
В качестве альтернативы, как рекомендовано в комментариях, cut()
также полезен здесь:
cut(ages, breaks=c(20, 30, 40, 50), right = FALSE)
cut(ages, breaks=c(20, 30, 40, 50), right = FALSE, labels = FALSE)