[R] matrix logic

Gabor Grothendieck ggrothendieck at gmail.com
Wed Jan 11 17:54:39 CET 2006

```The following seems close to the form you were trying.  It works
for matrices, not dataframes.  You can use as.matrix and
as.data.frame to convert back and forth:

# test data
data1 <- data2 <- matrix(1:6,3)
data1[2,2] <- NA

data1[] <- ifelse(is.na(data1), data2, data1)

On 1/11/06, t c <quantpm at yahoo.com> wrote:
> Uwe,
>  FYI:
>
>  I tried: "data3 <- ifelse(is.na(data1), data2, data1)"
>
>  It seems to me that data3 is an array of length 100.
>
>  I do NOT end up with a dataset of 5 columns and 20 rows.
>
> Uwe Ligges <ligges at statistik.uni-dortmund.de> wrote:
>  Tom wrote:
> > On Tue, 10 Jan 2006 20:25:23 -0500, r user wrote:
> >
> >
> >>I have 2 dataframes, each with 5 columns and 20 rows.
> >>They are called data1 and data2.I wish to create a
> >>third dataframe called data3, also with 5 columns and
> >>20 rows.
> >>
> >>I want data3 to contains the values in data1 when the
> >>value in data1 is not NA. Otherwise it should contain
> >>the values in data2.
> >>
> >>I have tried afew methids, but they do not seem to
> >>work as intended.:
> >>
> >>data3<-ifelse(is.na(data1)=F,data1,data2)
> >>
> >>and
> >>
> >>data3[,]<-ifelse(is.na(data1[,])=F,data1[,],data2[,])
> >>
> >>Please suggest the Ã¢â‚¬Å“bestÃ¢â‚¬Â way.
>
> "Better" way is to have the Syntax correct:
>
> data3 <- ifelse(is.na(data1), data2, data1)
>
>
> Please check the archives for almost millions of posts asking more or
> less this question...!
>
>
> > Not sure about the bast but...
> >
> > a<-c(1,2,3,NA,5)
> > b<-c(4,4,4,4,4)
> >
> > c<-a
> > c[which(is.na(a))]<-b[which(is.na(a))]
>
> Why do you want to know which()?
>
> na <- is.na(a)
> c[na] <- b[na]
>
>
> Uwe Ligges
>
>
> >
> >
> >
> >
> >>______________________________________________
> >>R-help at stat.math.ethz.ch mailing list
> >>https://stat.ethz.ch/mailman/listinfo/r-help
> >>http://www.R-project.org/posting-guide.html
> >>
> >
> >
> > ______________________________________________
> > R-help at stat.math.ethz.ch mailing list
> > https://stat.ethz.ch/mailman/listinfo/r-help
>
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
>
>
>
> ---------------------------------
>
>  Photo Books. You design it and we'll bind it!
>        [[alternative HTML version deleted]]
>
>
>
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help