You can try this also: Reduce('+', lapply(mymats, function(x)replace(x, is.na(x), 0)))
On Sun, Sep 12, 2010 at 10:36 PM, Gregory Ryslik <rsa...@comcast.net> wrote: > Hi Everyone, > > Thanks to everyone for their help. With your suggestions and some poking > around, the following works for what I need. It basically adds all the > matrices elementwise, and adds nothing if the element is NA. Thanks again! > Code below: > > > ****************************** > mymats <- vector('list', 5) > set.seed(246) > > # Generate a list of five 3 x 3 matrices > for(i in 1:5) mymats[[i]] <- matrix(sample(1:9), nrow = 3) > > mymats[[5]][1,1]<-NA > mymats[[4]][2,2]<-NA > mymats > > matrixadder<-function(u,v){ > na.u<-is.na(u) > na.v<-is.na(v) > ifelse(na.u & na.v, NA, ifelse(na.u, 0, u)+ ifelse(na.v,0,v)) > } > > Reduce('matrixadder',mymats) > ****************************** > > Cheers, > Greg > > > > > On Sep 12, 2010, at 8:33 PM, Ben Bolker wrote: > > > My next suggestion (I don't have time to work out or test an example > > at the moment): > > > > library(abind) > > tmparr <- abind(m1,m2,m3,...,along=3) > > OR > > tmparr <- do.call(c(matlist,list(along=3))) > > apply(tmparr,c(1,2),mean,na.rm=TRUE) > > > > or something along those lines. > > > > ______________________________________________ > > R-help@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. > > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help@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. > -- Henrique Dallazuanna Curitiba-Paraná-Brasil 25° 25' 40" S 49° 16' 22" O [[alternative HTML version deleted]]
______________________________________________ R-help@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.