Another way:

x <- list(c(9, 5, 7, 2, 14, 4, 4, 3), c(3, 6, 25, 2, 14, 3, 3, 4),
   c(28, 4, 14, 3, 14, 2, 4, 5), 28)
apply(array(unlist(lapply(x, '[', 1:max(sapply(x, length)))), dim = c(1, 8,
4)), 1:2, mean, na.rm = TRUE)

or

rowMeans(as.data.frame(lapply(x, '[', 1:max(sapply(x, length)))), na.rm =
TRUE)

On Fri, Oct 29, 2010 at 10:08 PM, Gregory Ryslik <rsa...@comcast.net> wrote:

> Hi,
>
> Ah! Thanks for your help! I have even seen Reduce before but for some
> reason just didn't make the connection. This helps a ton! Thanks again.
>
> Kind regards,
> Greg
> On Oct 29, 2010, at 6:53 PM, Jorge Ivan Velez wrote:
>
> > Hi Greg,
> >
> > Here are two ways of doing it:
> >
> > > mylist <- list(x = rpois(10, 10), y = rpois(10, 20), z = rpois(10, 5))
> > > mylist
> > $x
> >  [1]  3 13 14 16 10  7  3  5 12 14
> >
> > $y
> >  [1] 17 16 26 13 23 24 16 28 23 12
> >
> > $z
> >  [1]  2  6  5  5  5  1  9 11  6  4
> >
> > >
> > > colMeans(do.call(rbind, mylist), na.rm = TRUE)
> >  [1]  7.333333 11.666667 15.000000 11.333333 12.666667 10.666667
>  9.333333 14.666667 13.666667
> > [10] 10.000000
> > >
> > > Reduce("+", mylist)/length(mylist)
> >  [1]  7.333333 11.666667 15.000000 11.333333 12.666667 10.666667
>  9.333333 14.666667 13.666667
> > [10] 10.000000
> >
> >
> > HTH,
> > Jorge
> >
> >
> > On Fri, Oct 29, 2010 at 6:46 PM, Gregory Ryslik <> wrote:
> > Hi Everyone,
> >
> > I have a list of vectors like this (in this case it's 3 vectors but
> assume the vector count and the length of each vector is not known):
> >
> > [[1]]
> > [1]  9  5  7  2 14  4  4  3
> >
> > [[2]]
> > [1]  3  6 25  2 14  3  3  4
> >
> > [[3]]
> > [1] 28  4 14  3 14  2  4  5
> >
> > What I want to do is take the average vertically. Thus I want to do
> 9+3+28 /3, 5+6+4 /3, etc... and then have it return a vector. I'm assuming
> that if I can sum it, I can count it to so summing this would be just as
> helpful.
> >
> > I understand I can first go through each element of the list, get a
> vector, cbind into  matrix and sum across but I was hoping to avoid that...
> I tried getting it to work with mapply but am having difficulties...
> >
> > Thanks!
> >
> > Kind regards,
> > Greg
> > ______________________________________________
> > 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.

Reply via email to