我们说我有一个包含594个不同项目的变量。
[1] "qwerty"
[2] "qwerta"
[3] "qwerto"
[4] "qwerte"
etc.
我想要实现的是将项目分组到新的预定义类别中。例如,级别[1]到[85]的项目属于类别" A":
workclas<-factor(levels=c("A", "B", "C"), ordered=T)
workclas[levels(x)>=1 & levels(x)<85]<-"A"
workclas[levels(x)>=85 & levels(x)<272]<-"B"
workclas[levels(x)>=272 & levels(x)<594]<-"C"
workclas[x=="Refusal" | x=="Don't know" | x=="No answer"]<-NA
table(workclas, exclude=NULL)
我在想&#39;聚合&#39;但这显然不起作用。
aggregate(formula, data, FUN, ...,
subset, na.action = na.omit)
此外,我无法使用&#39; split&#39;因为我没有一个重新分配和相同的元素可以分开。
split(x, f, drop = FALSE, sep = ".", lex.order = FALSE, ...)
split(x, f, drop = FALSE, ...) <- value
我如何在R中解决这个问题?
感谢您的努力!
托马斯
答案 0 :(得分:1)
用户A的简短输入Webb非常感谢。 这就是我所做的,如果其他人正在努力解决类似的问题:
workisco<-as.numeric(workisco)
workclas<-factor(levels=c("A", "B", "C", "D"), ordered=T)
workisco = cut(workisco,
breaks = c(1,171,279,590),
labels = workclas,
right = TRUE)