On Wed, Dec 15, 2010 at 2:22 PM, Jim Maas <jimmaa...@gmail.com> wrote:
> I get a list object from an iterative function.  I'm trying to figure out
> the most efficient way to calculate the mean of one element, across all
> components of the overall list.
>
> I've tried
>
> output <- mean (listobject[[1:5]]$element)
>
> to get the mean of "element" in the first five components?
>
> It doesn't like the $.  I'm suspect one of the "apply" functions will work,
> but again I've not had success
>
Are you looking for this?
> x <- list()
> x[[1]] <- list()
> x[[1]][['element']] <- rnorm(100)
> x[[2]] <- list()
> x[[2]][['element']] <- rnorm(100)
> x[[3]] <- list()
> x[[3]][['element']] <- rnorm(100)
> str(x)
List of 3
 $ :List of 1
  ..$ element: num [1:100] 1.822 1.818 -2.305 -0.307 0.268 ...
 $ :List of 1
  ..$ element: num [1:100] 0.0167 0.3834 1.2947 -0.4583 -0.2165 ...
 $ :List of 1
  ..$ element: num [1:100] -1.244 -0.369 0.772 -2.368 2.136 ...
> mean(x[[1]][['element']])
[1] 0.1446610
> mean(x[[2]][['element']])
[1] -0.1471191
> mapply(function(y) mean(y$element), x)
[1]  0.14466105 -0.14711910  0.05024247

Liviu

______________________________________________
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.

Reply via email to