I suggest that when displaying test data in a post that you do it like this:
dput(cal) since then others can simply copy and paste it into their session. At any rate, using this test data: cal <- list(A = data.frame(time = 1:3, X1 = 1:3), B = data.frame(1:3, X1 = 3:5)) Pick off the second element of each list component, turn the result into a data frame and take the row means: rowMeans(as.data.frame(lapply(cal, "[", 2))) Since the times are irregular, you might prefer to represent cal as a multivariate zoo object using the zoo library: library(zoo) cal.zoo <- do.call("merge", lapply(cal, function(x) zoo(x[,2], x[,1]))) Once you have done this and other operations simplify. For this one its just: rowMeans(cal.zoo) or to plot them all plot(cal.zoo) # separate plots plot(call.zoo, plot.type = "single") # all on one plot On 12/7/05, Rhett Eckstein <[EMAIL PROTECTED]> wrote: > Dear list, > I have a list containing parameters (time and X1), and have "n" > similar data set like > the following: > > cal > [[1]] > time X1 > 1 0.0 10.006306 > 2 0.5 9.433443 > 3 1.0 8.893405 > 4 2.0 7.904274 > 5 4.0 6.243807 > 6 6.0 4.932158 > 7 8.0 3.896049 > 8 10.0 3.077604 > > [[2]] > time X1 > 1 0.0 10.015972 > 2 0.5 9.460064 > 3 1.0 8.935039 > 4 2.0 7.970755 > 5 4.0 6.343151 > 6 6.0 5.047900 > 7 8.0 4.017131 > 8 10.0 3.196856 > > [[3]] > time X1 > 1 0.0 9.985741 > 2 0.5 9.552583 > 3 1.0 9.138239 > 4 2.0 8.362664 > 5 4.0 7.003394 > 6 6.0 5.865057 > 7 8.0 4.911747 > 8 10.0 4.113382 > > [[4]] > ....... > > [[n]] > ....... > > And I would like to put all X1( when time=0) together, time=0.5,1... > are the same. > then calculate the mean value. > > a<-list() > > b<-list() > > c<-list() > > d<-list() > > e<-list() > ....... > > for(i in 1:n){ > + a[[i]]<-cal[[i]][1,2] > + b[[i]]<-cal[[i]][2,2] > + c[[i]]<-cal[[i]][3,2] > + d[[i]]<-cal[[i]][4,2] > + e[[i]]<-cal[[i]][5,2] > + ......... > } > >mean.a<-(a[[1]][1]+a[[2]][1]+a[[3]][1]+.....)/n > >mean.b<-(b[[1]][1]+b[[2]][1]+b[[3]][1]+.....)/n > >mean.c<-(c[[1]][1]+c[[2]][1]+c[[3]][1]+.....)/n > >mean.d<-(d[[1]][1]+d[[2]][1]+d[[3]][1]+.....)/n > >............. > >xy<-c(mean.a,mean.b,mean.c,mean.d,........) > But the way I use seem not very smart. > So please give me some hints to the simplify this. > Thanks in advance !! > Sincerely!! > > ______________________________________________ > R-help@stat.math.ethz.ch mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html > ______________________________________________ R-help@stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html