Hi > > I have a list of data frames like the following: > > set.seed(123) > a<- data.frame(x=runif(10), y = runif(10), sample = seq(1,10)) > b<- data.frame(x=runif(10), y = runif(10), sample = seq(1,10)) > L<- list(a,b) > > All data frames in the list have the same dimensions. I need to calculate > the sample means for x and y. The real data are lists of several thousand > quite large dataframes, so I need something that is pretty fast. Here is > what I have so far: > > y<- rowMeans(sapply(L,'[[','y')) > x<- rowMeans(sapply(L,'[[','x')) > > this works great, but I'm only able to get the sample means for one column > at a time. Is there a way to automate things a bit so that I can get the > sample means for several columns with one call?
I am not sure if it is suitable for you but plyr package can be used. Maybe somebody could do better aaply(laply(L, as.matrix), 3, colMeans) shall give you an array with rows of means for columns of your data frames. Regards Petr > > Thanks for any suggestions, > > Matthew > > [[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. ______________________________________________ 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.