[R] ifelse reformulation

arun smartpink111 at yahoo.com
Wed Oct 24 19:12:33 CEST 2012




Hi,
Try this:
test1<-read.table(text=" 
   id x1 x2 x3 x4 x5 x6 x7 
1   1 36 26 21 32 31 27 31 
2   2 45 21 46 50 22 36 29 
3   3 49 47 35 44 33 31 46 
4   4 42 32 38 28 39 45 32 
5   5 29 42 39 48 25 35 34 
6   6 39 31 30 37 46 43 44 
7   7 41 40 25 23 42 40 24 
8   8 27 29 47 34 26 38 28 
9   9 25 35 29 36 43 34 23 
10 10 24 44 37 26 27 46 22 
11 11 38 50 32 49 37 24 40 
12 12 20 34 48 25 30 41 36 
13 13 26 46 20 40 29 20 43 
14 14 33 37 49 31 47 30 30 
15 15 43 39 27 35 48 47 27 
",sep="",header=TRUE) 


group<-c(40,50,60,70)
as.vector(apply(test1,1,function(x) ifelse(any(x[4:6]%in%group),0,1)))
# [1] 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1

#Comparing the results individually

ifelse(test1$x4==40|test1$x4==50|test1$x4==60|test1$x4==70|test1$x5==40|test1$x5==50|test1$x5==60|test1$x5==70|test1$x6==40|test1$x6==50|test1$x6==60|test1$x7==70,0,1)
# [1] 1 0 1 1 1 1 0 1 1 1 1 1 0 1 1

 as.vector(apply(test1,1,function(x) ifelse(any(x[4:6]==40|x[4:6]==50|x[4:6]==60|x[4:6]==70),0,1)))
 #[1] 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1
A.K.
________________________________
From: Bruno Marques <brunosm87 at gmail.com>
To: arun <smartpink111 at yahoo.com> 
Sent: Wednesday, October 24, 2012 12:47 PM
Subject: Re: [R] ifelse reformulation


Hi Arun, let me ask you just one more thing, please.

If i want to compare, not one but a group of values, can i do this:

group<-c(40,50,60,70)

as.vector(apply(test1,1,function(x) ifelse(any(x[4:6]==group),0,1)))

What i want is: IF it finds any of the values in group, then 0.
I mean, it has to work like a OR... but i think this code will work like an AND... am i wrong?

Sorry for my bad english!

Best regards,

Bruno


2012/10/12 arun <smartpink111 at yahoo.com>

HI,
>Try this:
>count40<- ifelse(test1$x3==40|test1$x4==40|test1$x5==40,0,1)
>count40
>
># [1] 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1
>as.vector(apply(test1,1,function(x) ifelse(any(x[4:6]==40),0,1)))
># [1] 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1
>A.K.
>
>
>
>
>----- Original Message -----
>From: brunosm <brunosm87 at gmail.com>
>To: r-help at r-project.org
>Cc:
>Sent: Friday, October 12, 2012 10:18 AM
>Subject: Re: [R] ifelse reformulation
>
>That was exacly what i was looking for! Thanks a lot!
>Cheers!
>
>
>
>--
>View this message in context: http://r.789695.n4.nabble.com/ifelse-reformulation-tp4645981p4645990.html
>
>Sent from the R help mailing list archive at Nabble.com.
>
>______________________________________________
>R-help at 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.
>
>




More information about the R-help mailing list