[R] matrix from list
Martin Maechler
maechler at stat.math.ethz.ch
Sat Apr 26 11:21:59 CEST 2008
>>>>> "OL" == Olivier Lefevre <lefevrol at yahoo.com>
>>>>> on Sat, 26 Apr 2008 01:31:16 +0200 writes:
OL> Greg Snow wrote:
>> The '[[' only returns a single element from a data structure
OL> I know but that is precisely what I find arbitrary.
OL> Anyway you are right that it would still return the kind of object, only
OL> subsetted, which is not I want. As someone kindly pointed out to me
OL> offline, besides the unlist trick posted before, you can also achieve the
OL> desired result with
OL> m <- as.matrix(l)
OL> dimnames(m) <- NULL
Two remarks on these two lines:
- Slightly better for the 99% user- case of coercing a
'data.frame' (the result of read.table() or similar) ato a matrix is
m <- data.matrix(.)
The difference to as.matrix() is that data.matrix() also
produces a numeric matrix in the case the data frame contains
factors.
Consider
(dd <- data.frame(x= rnorm(10), f = gl(2,5))
as.matrix(dd) ## not what you want
data.matrix(dd) ## what you want
- I don't understand why you want to throw away the dimnames of
the resulting numeric matrix. Rather, in general you'd want
to keep them.
Martin Maechler, ETH Zurich
More information about the R-help
mailing list