[R] Summing x1 to x6

David Winsemius dwinsemius at comcast.net
Mon Dec 19 20:30:14 CET 2011


On Dec 19, 2011, at 11:00 AM, Pablo wrote:

> Suppose I have the following:
>
> x1<-as.vector(rnorm(10))
> x2<-as.vector(rnorm(10))
> x3<-as.vector(rnorm(10))
> x4<-as.vector(rnorm(10))
> x5<-as.vector(rnorm(10))
> x6<-as.vector(rnorm(10))
> x7<-as.vector(rnorm(10))
> x8<-as.vector(rnorm(10))
> x9<-as.vector(rnorm(10))
> x10<-as.vector(rnorm(10))
>
> I would like the mean of x1 to x6 for each vector position.

 > apply( data.frame(x1,x2,x3,x4,x5,x6), 1, mean)
  [1] -0.39321854 -0.92940746 -0.04843466 -0.27764111  0.44058599   
0.73512759
  [7] -0.22232332 -0.89535287 -0.33430655  0.66217526
 > apply( matrix(c(x1,x2,x3,x4,x5,x6),ncol=6), 1, mean)
  [1] -0.39321854 -0.92940746 -0.04843466 -0.27764111  0.44058599   
0.73512759
  [7] -0.22232332 -0.89535287 -0.33430655  0.66217526

After seeing Jim Holtman's suggestion, it should be clear that  
rowMeans would work just even better than these `apply` solutions when  
used with this "vertical" orientation of the vectors.


> I would do
> something else with x7-x10.  These vectors are not currently in a  
> dataframe.
> I tried to be clever by trying get(paste(paste("x", 1:6, sep=""),
> collapse="+")) but it didn't work.  Any thoughts are greatly  
> appreciated,
>

-- 

David Winsemius, MD
West Hartford, CT



More information about the R-help mailing list