Hi, Try: dat<- read.table(text=" Var 0 0.2 0.5 1 4 6 ",sep="",header=TRUE)
res1<-within(dat,group<-factor(findInterval(Var,c(-Inf,0.1,0.6),rightmost.closed=TRUE),labels=LETTERS[1:3])) res1 # Var group #1 0.0 A #2 0.2 B #3 0.5 B #4 1.0 C #5 4.0 C #6 6.0 C #or res2<-within(dat,group<-factor(cut(Var,breaks=c(-Inf,0.1,0.6,Inf)),labels=LETTERS[1:3])) identical(res1,res2) #[1] TRUE A.K. >hey, I want to divide my data into three groups based on the value in one >column with group name. > >dat: > >Var >0 >0.2 >0.5 >1 >4 >6 > >I tried: > >dat <- cbind(dat, group=cut(dat$Var, breaks=c(0.1,0.6))) > >But it doesnt work, I want to group those <0.1 as group A, 0.1-0.6 as group >B, >0.6 as group C > >Thanks for your help! ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.