[R] Summing x1 to x6

Florent D. flodel at gmail.com
Tue Dec 20 02:50:55 CET 2011


>> I tried to be clever by trying get(paste(paste("x", 1:6, sep=""), collapse="+")) but it didn't work.
Maybe you meant something like this:
sapply(paste("x", 1:6, sep=""), function(x)mean(get(x)))



On Mon, Dec 19, 2011 at 2:30 PM, David Winsemius <dwinsemius at comcast.net> wrote:
>
> 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
>
>
> ______________________________________________
> R-help at 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.



More information about the R-help mailing list