Message-ID: <1365632928.41061.YahooMailNeo@web142602.mail.bf1.yahoo.com>
Date: 2013-04-10T22:28:48Z
From: arun
Subject: means in tables
In-Reply-To: <6bdc87b794493c396f79f19a34b6ca72.squirrel@webmail.uel.br>
Hi,
?YOu can load all the datasets directly from the directory in a list.
set.seed(25)
?lst1<-lapply(1:100,function(i) as.data.frame(matrix(sample(1:40,25,replace=TRUE),ncol=5)))
?length(lst1)
#[1] 100
library(abind)
apply(abind(lst1,along=3),c(1,2),mean)
#??????? V1??? V2??? V3??? V4??? V5
#[1,] 20.37 21.95 19.51 22.77 22.00
#[2,] 20.43 17.94 18.81 20.02 23.86
#[3,] 23.00 18.64 21.15 21.61 22.12
#[4,] 20.10 20.89 22.35 19.62 20.72
#[5,] 19.36 20.97 19.36 21.02 20.48
? mean(unlist(lapply(lst1,function(x) x[1,1])))
#[1] 20.37
mean(unlist(lapply(lst1,function(x) x[4,5])))
#[1] 20.72
?mean(unlist(lapply(lst1,function(x) x[5,2])))
#[1] 20.97
A.K.
----- Original Message -----
From: Silvano Cesar da Costa <silvano at uel.br>
To: arun <smartpink111 at yahoo.com>
Cc:
Sent: Wednesday, April 10, 2013 6:02 PM
Subject: Re: [R] means in tables
Hi Arun,
I thought with an example with two tables I could generalize to the 100
tables that have. It did not work.
Actually have 100 tables in the format mentioned. I need to calculate the
average of the elements that are in the same position in the 100 tables.
> Hi,
> This could be done in different ways:
> tab1<-read.table(text="
> V1? V2? V3? V4? V5
> 14.23 1.71 2.43 15.6 127
> 13.20 1.78 2.14 11.2 100
> 13.16 2.36 2.67 18.6 101
> 14.37 1.95 2.50 16.8 113
> 13.24 2.59 2.87 21.0 118
> ",sep="",header=TRUE)
> tab2<-read.table(text="
> V1? V2? V3? V4? V5
> 1.23 1.1 2.3 1.6 17
> 1.20 1.8 2.4 1.2 10
> 1.16 2.6 2.7 1.6 11
> 1.37 1.5 2.0 1.8 13
> 1.24 2.9 2.7 2.0 18
> ",sep="",header=TRUE)
>
>
> (tab1+tab2)/2
> #??? V1??? V2??? V3?? V4 V5
> #1 7.73 1.405 2.365? 8.6 72
> #2 7.20 1.790 2.270? 6.2 55
> #3 7.16 2.480 2.685 10.1 56
> #4 7.87 1.725 2.250? 9.3 63
> #5 7.24 2.745 2.785 11.5 68
>
>
> #or
> library(abind)
> ?apply(abind(list(tab1,tab2),along=3),c(1,2),mean)
> #?????? V1??? V2??? V3?? V4 V5
> #[1,] 7.73 1.405 2.365? 8.6 72
> #[2,] 7.20 1.790 2.270? 6.2 55
> #[3,] 7.16 2.480 2.685 10.1 56
> #[4,] 7.87 1.725 2.250? 9.3 63
> #[5,] 7.24 2.745 2.785 11.5 68
>
>
> #or
>
> library(plyr)
> dcast(adply(abind(list(tab1,tab2),along=3),c(1,2),mean),X1~X2,value.var="V1")[,-1]
> #??? V1??? V2??? V3?? V4 V5
> #1 7.73 1.405 2.365? 8.6 72
> #2 7.20 1.790 2.270? 6.2 55
> #3 7.16 2.480 2.685 10.1 56
> #4 7.87 1.725 2.250? 9.3 63
> #5 7.24 2.745 2.785 11.5 68
>
> #or
> aaply(abind(list(tab1,tab2),along=3),c(1,2),mean)
> #?? X2
> #X1??? V1??? V2??? V3?? V4 V5
> ?# 1 7.73 1.405 2.365? 8.6 72
> ?# 2 7.20 1.790 2.270? 6.2 55
> ?# 3 7.16 2.480 2.685 10.1 56
> ?# 4 7.87 1.725 2.250? 9.3 63
> ?# 5 7.24 2.745 2.785 11.5 68
>
>
> A.K.
>
>
>
> ----- Original Message -----
> From: Silvano Cesar da Costa <silvano at uel.br>
> To: r-help at r-project.org
> Cc:
> Sent: Wednesday, April 10, 2013 12:07 PM
> Subject: [R] means in tables
>
> Hi.
>
> I have 2 tables, with same dimensions (8000 x 5). Something like:
>
> tab1:
>
> V1?? V2?? V3?? V4? V5
> 14.23 1.71 2.43 15.6 127
> 13.20 1.78 2.14 11.2 100
> 13.16 2.36 2.67 18.6 101
> 14.37 1.95 2.50 16.8 113
> 13.24 2.59 2.87 21.0 118
>
> tab2:
>
> V1?? V2?? V3?? V4? V5
> 1.23 1.1 2.3 1.6 17
> 1.20 1.8 2.4 1.2 10
> 1.16 2.6 2.7 1.6 11
> 1.37 1.5 2.0 1.8 13
> 1.24 2.9 2.7 2.0 18
>
> I need generate a table of averages, the elements in the same position in
> both tables, like:
>
> tab3:
> (14.23 + 1.23)/2? (1.71+1.1)/2?? (127+17)/2
>
> and so on
>
> I tried the program:
>
> M?dias = matrix(NA, nrow(tab1), ncol(tab1))
> for(i in 1:nrow(tab1)){
> ? for(j in 1:ncol(tab1)){
> ? ? for(k in 1:nrow(tab2)){
> ? ? ? for(l in 1:ncol(tab2)){
> ? ? ? ? M?dias = tab1$i[j]
> ? ? ? }}}}
>
> M?dias
>
> but it does't? work. I don't know programming.
>
> How can I do this?
>
> Thanks,
>
>
> ---------------------------------------------
> Silvano Cesar da Costa
>
> Universidade Estadual de Londrina
> Centro de Ci?ncias Exatas
> Departamento de Estat?stica
>
> Fone: (43) 3371-4346
>
> ______________________________________________
> 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.
>
>
>
---------------------------------------------
Silvano Cesar da Costa
Universidade Estadual de Londrina
Centro de Ci?ncias Exatas
Departamento de Estat?stica
Fone: (43) 3371-4346
---------------------------------------------