[R] create new variable with ifelse? (reproducible example)

Rui Barradas ruipbarradas at sapo.pt
Sun Sep 16 15:11:22 CEST 2012


Hello,

Here's another one.

logic.result <- with(rep_data, know %in% c("very well", "fairly well") & 
getalong %in% c(4,5))
rep_data$clo <- 1*logic.result # coerce to numeric

Rui Barradas

Em 16-09-2012 13:29, Stephen Politzer-Ahles escreveu:
> Hi Niklas,
>
> I like A.K.'s method. Here's another way to do what I think is the same
> thing you're asking for (this is how I did it before I knew ifelse()
> existed!)
>
> rep_data$clo <- 0
> rep_data[ rep_data$know %in% c("very well", "fairly well") &
> rep_data$getalong %in% c(4,5),]$clo <- 1
>
> Best,
> Steve
>
> ------------------------------
>
> Message: 25
> Date: Sat, 15 Sep 2012 23:36:49 +0300
> From: Niklas Fischer <niklasfischer980 at gmail.com>
> To: r-help at r-project.org
> Subject: [R] create new variable with ifelse? (reproducible example)
> Message-ID:
>          <CADWGO2zANM_UK8qf=JLZHRSqgtPC=NX+rU2kXx=1etw0uQvxRg at mail.gmail.com>
> Content-Type: text/plain
>
> Dear R users,
>
> I have a reproducible data and try to create new variable "clo" is 1  if
> know variable is equal to "very well" or "fairly well" and getalong is 4 or
> 5
> otherwise it is 0.
>
> rep_data<- read.table(header=TRUE, text="
>             id1        id2        know getalong
>     100000016_a1 100000016_a2   very well        4
>     100000035_a1 100000035_a2 fairly well       NA
>     100000036_a1 100000036_a2   very well        3
>     100000039_a1 100000039_a2   very well        5
>     100000067_a1 100000067_a2   very well        5
>     100000076_a1 100000076_a2 fairly well        5
> ")
>
>
> rep_data$clo<- ifelse((rep_data$know==c("fairly well","very well") &
> rep_data$getalong==c(4,5)),1,0)
>
> For sure, something must be wrong, I couldn't find it out.
>
> rep_data
>
>                        id1    id2 know getalong clo
> 100000016_a1 100000016_a2   very well        4   0
> 100000035_a1 100000035_a2 fairly well       NA   0
> 100000036_a1 100000036_a2   very well        3   0
> 100000039_a1 100000039_a2   very well        5   0
> 100000067_a1 100000067_a2   very well        5   0
> 100000076_a1 100000076_a2 fairly well        5   0
>
> Any help is appreciated..
> Bests,
> Niklas
>
> 	[[alternative HTML version deleted]]
>
> ______________________________________________
> 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