Say I have the following data:

> s <- list()
> s[["A"]] <- list(name="first", series=ts(rnorm(50), frequency=10,
start=c(2000,1)), category="top")
> s[["B"]] <- list(name="second", series=ts(rnorm(60), frequency=10,
start=c(2000,2)), category="next")

If I use unlist since this is a list of lists I don't end up with a data
frame. And the number of rows in the data frame should equal the number of
time series entries. In the sample above it would be 110. I would expect
that the name and category strings would be recycled for each row. My brute
force code attempts to build the data frame by appending to the master data
frame but like I said it is *very* slow.

Kevin

-----Original Message-----
From: R. Michael Weylandt [mailto:michael.weyla...@gmail.com] 
Sent: Wednesday, November 16, 2011 5:26 PM
To: rkevinbur...@charter.net
Cc: r-help@r-project.org
Subject: Re: [R] List of lists to data frame?

unlist(..., recursive = F)

Michael

On Wed, Nov 16, 2011 at 6:20 PM,  <rkevinbur...@charter.net> wrote:
>
> I would like to make the following faster:
>
>        df <- NULL
>        for(i in 1:length(s))
>        {
>                df <- rbind(df, cbind(names(s[i]), time(s[[i]]$series), 
> as.vector(s[[i]]$series), s[[i]]$category))
>        }
>        names(df) <- c("name", "time", "value", "category")
>        return(df)
>
> The s object is a list of lists. It is constructed like:
>
> s[["object"]] <- list(. . . . . .)
>
> where "object" would be the name associated with this list 
> s[[i]]$series is a 'ts' object and s[[i]]$category is a name.
>
> Constructing this list is reasonably fast but to do some more 
> processing on the data it would be easier if it were converted to a data
frame.
> Right now the above code is unacceptably slow at converting this list 
> of lists to a data frame. Any suggestions on how to optimize this are 
> welcome.
>
> Thank you.
>
> Kevin
>
>        [[alternative HTML version deleted]]
>
> ______________________________________________
> 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.

Reply via email to