[R] How to mean, min lists and numbers
Duncan Murdoch
murdoch.duncan at gmail.com
Mon Jul 12 17:19:16 CEST 2010
On 12/07/2010 11:10 AM, guox at ucalgary.ca wrote:
> I would like to sum/mean/min a list of lists and numbers to return the
> related lists.
>
> -1+2*c(1,1,0)+2+c(-1,10,-1) returns c(2,13,0) but
> sum(1,2*c(1,1,0),2,c(-1,10,-1)) returns 15 not a list.
> Using the suggestions of Gabor Grothendieck,
> Reduce('+',list(-1,2*c(1,1,0),2,c(-1,10,-1))) returns what we want,
> c(2,13,0).
>
> However, it seems that this way does not work to mean/min.
> So, how to mean/min a list of lists and numbers to return a list? Thanks,
You need to be careful of terminology: c(1,1,0) is not a list, it's a
vector. What you want is to apply functions componentwise to lists of
vectors.
One way to do that is to bind them into a matrix, and use apply. For
example:
M <- cbind(-1, c(1,1,0), c(-1,10,-1))
apply(M, 1, mean)
Duncan Murdoch
More information about the R-help
mailing list