Re: [R] remove levels from a factor

2008-08-30 Thread Frank E Harrell Jr
Adrian Dusa wrote: Adrian Dusa gmail.com> writes: [...snip...] f[which(f %in% names(table(f))[table(f) >= 2]), drop=TRUE] [1] a a Levels: a Or, more simple: f[f %in% names(table(f))[table(f) >= 2], drop=TRUE] [1] a a Levels: a Adrian Also see the combine.levels function in the Hmisc pa

Re: [R] remove levels from a factor

2008-08-30 Thread Adrian Dusa
Adrian Dusa gmail.com> writes: > > [...snip...] > > f[which(f %in% names(table(f))[table(f) >= 2]), drop=TRUE] > [1] a a > Levels: a Or, more simple: > f[f %in% names(table(f))[table(f) >= 2], drop=TRUE] [1] a a Levels: a Adrian __ R-help@r-project.o

Re: [R] remove levels from a factor

2008-08-30 Thread Adrian Dusa
Yuan Jian yahoo.com> writes: > [...snip...] > > I want to remove level b because level b has less than 2. > > f > [1] a a > Levels: a > f[which(f %in% names(table(f))[table(f) >= 2]), drop=TRUE] [1] a a Levels: a HTH, Adrian __ R-help@r-project.or

Re: [R] remove levels from a factor

2008-08-29 Thread milton ruser
Hi Yuan, It is not ellegant, but may work for you.. f<-as.factor(c("a","b","a")) f.freq<-data.frame(table(f)) f.freq lower.freq<-2 f.freq.subset<-subset(f.freq,f.freq$Freq>=lower.freq) f.freq.subset f.selected<-f[f %in% f.freq.subset$f] f.selected<-factor(f.selected) f.selected Best wishes,

[R] remove levels from a factor

2008-08-29 Thread Yuan Jian
Hi,   how to remove levels that have less than a specific number such as 2. i.e..   > f<-as.factor(c("a","b","a")) > f [1] a b a Levels: a b I want to remove level b because level b has less than 2. > f [1] a a Levels: a   [[alternative HTML version deleted]] __