This is somewhat subtle. Rolf's solution (here corrected to...)
a <- list() for(i in 0:10000) a[[i+1]] <- i is the best of the loop solutions (or at least the best I know of). The apparently similar a <- list(0) for(i in 1:10000) a <- c(a, list(i)) will take a lot longer, although the result is the same. For example: > system.time({ a <- list() for(i in 0:10000) a[[i+1]] <- i }) user system elapsed 0.59 0.00 0.59 > system.time({ a <- list(0) for(i in 1:10000) a <- c(a, list(i)) }) user system elapsed 6.87 0.00 6.89 > That's a factor of about 11 times as long. The best of the lot is a <- as.list(0:10000) of course, but this has problems with generalisation, (which everyone suspects is going to be needed here...). Bill Venables. -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Rolf Turner Sent: Wednesday, 28 May 2008 1:02 PM To: Daniel Yang Cc: r-help@r-project.org Subject: Re: [R] how to bind lists recursively On 28/05/2008, at 2:43 PM, Daniel Yang wrote: > Dear all, > > I want to create a list that contains 0,1,2,3, ..., 10000 as its > elements. I used the following code, which apparently doesn't work > very well. > > a <- 0 > for(i in 1:10000) { > a <- list(a, i) > } > > The result is not what I wanted. So how to create the bind lists > recursively so that the last element would be the newly added one > while the previous elements all remain the same? a <- list() for(i in 1:10000) a[[i]] <- i (The word ``bind'' is inappropriate.) cheers, Rolf Turner ###################################################################### Attention:\ This e-mail message is privileged and confid...{{dropped:9}} ______________________________________________ R-help@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. ______________________________________________ R-help@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.