> c <- apply(b, c(1,2), unlist) > c A B C [1,] 1 2 3 [2,] 4 5 6 > class(c[1,1]) [1] "numeric"
On 12/14/06, Joerg van den Hoff <[EMAIL PROTECTED]> wrote: > I have encountered the following problem: I need to extract from > a list of lists equally named compenents who happen to be 'one row' > data frames. a trivial example would be: > > a <- list(list( > df = data.frame(A = 1, B = 2, C = 3)), list(df = data.frame(A = 4,B = 5,C = > 6))) > > I want the extracted compenents to fill up a matrix or data frame row by row. > the obvious thing to do seems: > > b <- sapply(a, "[[", "df") > b <- t(b) > > now `b' looks all right: > > b > class(b) > > but it turns out that all elements in this matrix are one element lists: > > class(b[1,1]) > > which prevents any further standard processing of `b' (like `colMeans', e.g.) > > question 1: is their a straightforward way to enforce that `b' contains > simple numbers as elements right from the start (instead of something like > apply(b, 1:2, "class<-", "numeric") afterwards)? > > question 2: should not sapply do this further 'simplification' anyway in a > situation > like this (matrix elements turn out to be one-element lists)? > > regards > > joerg > > ______________________________________________ > 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. > -- Weiwei Shi, Ph.D Research Scientist GeneGO, Inc. "Did you always know?" "No, I did not. But I believed..." ---Matrix III ______________________________________________ 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.