# [R] how to create a new column from two columns with conditions

Ana Marija @okov|c@@n@m@r|j@ @end|ng |rom gm@||@com
Wed Apr 29 23:44:22 CEST 2020

```Hi Rui,

thanks for getting back to me
so I tried your method and I got:
> sum(b\$PHENO==2, na.rm=T)
[1] 828
> sum(b\$PHENO==1, na.rm=T)
[1] 859

Can you please tell me if
b\$PHENO <- (b\$FLASER == 2 | b\$PLASER == 2) + 1L

just assigns PHENO=2 if b\$FLASER == 2 | b\$PLASER == 2 and everything else is 1?

Please see how my data looks like:
> sum(b\$FLASER==2, na.rm=T)
[1] 92
> sum(b\$FLASER==1, na.rm=T)
[1] 1533
> sum(b\$PLASER==1, na.rm=T)
[1] 850
> sum(b\$PLASER==2, na.rm=T)
[1] 806
> dim(b)
[1] 1698    5
> unique(b\$FLASER)
[1]  1  3  2 NA
> unique(b\$PLASER)
[1]  1  2  3 NA

On Wed, Apr 29, 2020 at 4:10 PM Rui Barradas <ruipbarradas using sapo.pt> wrote:
>
> Hello,
>
> Here is another way. The condition returns FALSE/TRUE or 0/1. Add 1 to
> get the expected result.
> It has the advantage of being faster.
>
> b\$PHENO <- (b\$FLASER == 2 | b\$PLASER == 2) + 1L
>
>
> Hope this helps,
>
>
> Às 20:42 de 29/04/20, Ana Marija escreveu:
> > Thanks, I did this:
> > b\$PHENO<- ifelse(b\$FLASER ==2 | b\$PLASER ==2, 2, 1)
> >
> > On Wed, Apr 29, 2020 at 2:36 PM Ivan Krylov <krylov.r00t using gmail.com> wrote:
> >>
> >> On Wed, 29 Apr 2020 14:19:18 -0500
> >> Ana Marija <sokovic.anamarija using gmail.com> wrote:
> >>
> >>> My conditions for creating a new column PHENO would be this:
> >>>
> >>> if FLASER or PLASER =2 then PHENO=2
> >>> otherwise PHENO=1
> >>
> >> On Wed, 29 Apr 2020 15:30:45 -0400
> >> "Patrick (Malone Quantitative)" <malone using malonequantitative.com> wrote:
> >>
> >>> If you don't mind using tidyverse, you can do this easily with
> >>> if_else.
> >>
> >> ...and if you want to stay with base R, you can use the ifelse
> >> function.
> >>
> >> --
> >> Best regards,
> >> Ivan
> >
> > ______________________________________________
> > R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> > https://stat.ethz.ch/mailman/listinfo/r-help