[R] if statement

Ken Knoblauch knoblauch at lyon.inserm.fr
Wed Jun 13 09:05:55 CEST 2007


Simon Blomberg <s.blomberg1 <at> uq.edu.au> writes:

> 
> My solutions are usually too baroque, but does this do what you want?
> 
> x <- rnorm(100)
> quants <- quantile(x, c(.3, .7))
> Case <- rep(2, length(x)) # 2 lies in the middle of the distribution
> Case[x <= quants[1]] <- 0
> Case[x >= quants[2]] <- 1
> Case
> 
> On Mon, 2007-06-11 at 15:14 -0700, Jiong Zhang, PhD wrote:
> > Hi all,
> > 
> > I have a rather naive question. I have the height of 100 individuals in
> > a table and I want to assign the tallest 30% as Case=1 and the bottom
> > 30% as Case=0.  How do I do that?
> > 

Or, how about, 

x <- rnorm(100)
Case <- cut(x,  quantile(x, c(0, 0.3, 0.7, 1)), c(0, 2, 1), TRUE)

ken

-- 
Ken Knoblauch
Inserm U846
Institut Cellule Souche et Cerveau
Département Neurosciences Intégratives
18 avenue du Doyen Lépine
69500 Bron
France
tel: +33 (0)4 72 91 34 77
fax: +33 (0)4 72 91 34 61
portable: +33 (0)6 84 10 64 10
http://www.pizzerialesgemeaux.com/u846/



More information about the R-help mailing list