[R] Subsetting a list
Martin Maechler
maechler at stat.math.ethz.ch
Fri Oct 21 10:18:58 CEST 2005
>>>>> "PaCo" == Patrick Connolly <p.connolly at hortresearch.co.nz>
>>>>> on Fri, 21 Oct 2005 13:26:08 +1300 writes:
PaCo> On Wed, 19-Oct-2005 at 05:09PM +0200, Martin Maechler wrote:
PaCo> |> Lists can have 'dim' attributes and hence be treated as arrays;
PaCo> |> Note that this is pretty rarely used and not too well supported
PaCo> |> by some tools, one could say even 'print()' :
PaCo> |>
PaCo> |> > set.seed(0); L0 <- L <- lapply(rpois(12, lambda=3), seq); dim(L) <- 3:4; L
PaCo> |> [,1] [,2] [,3] [,4]
PaCo> |> [1,] Integer,5 Integer,3 Integer,5 Integer,3
PaCo> |> [2,] Integer,2 Integer,5 Integer,6 1
PaCo> |> [3,] Integer,2 Integer,2 Integer,4 Integer,2
PaCo> for an occasion such as this, it can be clearer to do:
>> transform(L)
PaCo> X1 X2 X3 X4
PaCo> 1 1, 2, 3, 4, 5 1, 2, 3 1, 2, 3, 4, 5 1, 2, 3
PaCo> 2 1, 2 1, 2, 3, 4, 5 1, 2, 3, 4, 5, 6 1
PaCo> 3 1, 2 1, 2 1, 2, 3, 4 1, 2
wow!
Thank you Patrick!
Actually, that's identical to
data.frame(L)
which I honestly wouldn't have had expected to work for L.
Martin
More information about the R-help
mailing list