Re: [R] rbind-ing list

From: Patrick Burns <pburns_at_pburns.seanet.com>
Date: Tue 30 Jan 2007 - 10:41:12 GMT

The original poster is correct that the loop can be astoundingly inefficient. The issue is not so much overwriting a variable, but increasing its size as it is overwritten.

In cases where 'do.call' won't do, then a good approach is to create the object with its final size and then subscript into it to replace parts of it on each iteration.

Patrick Burns
patrick@burns-stat.com
+44 (0)20 8525 0696
http://www.burns-stat.com
(home of S Poetry and "A Guide for the Unwilling S User")

jim holtman wrote:

>do.call(rbind, temp)
>
>On 1/29/07, jiho.han <jiho.han@yahoo.com> wrote:
>
>
>>hi,
>>
>>i have a list of data.frame that has same structure. i would like to know a
>>efficient way of rbind-ing it.
>>right now, i write:
>>
>>
>>n = length(temp) # 'temp' is a list of data.frames
>>temp2 = data.frame()
>>for (i in 1:n) temp2 = rbind( temp2, temp[[i]])
>>return(temp2)
>>
>>
>>but this is not an efficient way since we keeping overwriting temp2. i
>>wonder if there's faster way.
>>
>>thanks
>>--

>>View this message in context: http://www.nabble.com/rbind-ing-list-tf3140137.html#a8703373
>>Sent from the R help mailing list archive at Nabble.com.
>>
>>______________________________________________
>>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
>>and provide commented, minimal, self-contained, reproducible code.
>>
>>
>>
>
>
>
>



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 and provide commented, minimal, self-contained, reproducible code. Received on Tue Jan 30 21:47:07 2007

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.1.8, at Tue 30 Jan 2007 - 11:30:25 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.