Thanks, as you suggested, do.call(rbind, lapply(foo, unlist)) does the trick.
On Sat, Oct 3, 2009 at 8:30 PM, David Winsemius <dwinsem...@comcast.net>wrote: > > On Oct 3, 2009, at 7:51 PM, Andrew Yee wrote: > > Take the following code: >> foo <- list() >> >> foo[[1]] <- list(a=1, b=2) >> foo[[2]] <- list(a=11, b=22) >> foo[[3]] <- list(a=111, b=222) >> >> > Instead, perhaps: > > > do.call(rbind, lapply(foo, unlist)) > a b > [1,] 1 2 > [2,] 11 22 > [3,] 111 222 > > > do.call(rbind, lapply(foo, unlist))[,"a"] > [1] 1 11 111 > > > result <- do.call(rbind, foo) >> result[,'a'] >> > > class(result) # also matrix > > >> In this case, result[,'a'] shows a list. Is there a more elegant way such >> that result is a "regular" matrix of vectors? I imagine there are manual >> ways of going about this, but I was wondering if there was an obvious step >> that I was missing. >> > > Your example shows that a matrix can be constructed around a list, although > I agree with you that this seems a bit unusual. > -- > > David Winsemius, MD > Heritage Laboratories > West Hartford, CT > > [[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.