将间隔转换为组

时间:2012-09-14 23:18:00

标签: r

这可能是问过,但我找不到类似的:有没有办法将间隔转换为组ID,如:

x <- data.frame(num = c(1:15))
x$int <- cut(x$num, 5)

这样

x$group:
1 1 1 2 2 2 3 3 3 4 4 4 5 5 5

谢谢!

2 个答案:

答案 0 :(得分:4)

如果您指定as.numeric()

,则可以避免labels = FALSE后期处理
> cut(x$num, 5, labels = FALSE)
 [1] 1 1 1 2 2 2 3 3 3 4 4 4 5 5 5

cut()的帮助页面告诉我们有关标签的信息:If labels = FALSE, simple integer codes are returned instead of a factor.

答案 1 :(得分:3)

你真是太近了!

as.numeric(x$int)
#  [1] 1 1 1 2 2 2 3 3 3 4 4 4 5 5 5