[R] Extracting elements out of list in list in list

Chel Hee Lee chl948 at mail.usask.ca
Fri Jan 16 16:23:49 CET 2015

```This approach may not be fancy as what you are looking for.

> xl <- unlist(x)
> xl[grep("A", names(xl))]
f1.x1.A f1.x2.A f2.x3.A f2.x4.A
11      12      13      14
>

I hope this helps.

Chel Hee Lee

On 01/16/2015 04:40 AM, Rainer M Krug wrote:
> Hi
>
> Consider the following variable:
>
> --8<---------------cut here---------------start------------->8---
> x1 <- list(
>    A = 11,
>    B = 21,
>    C = 31
> )
>
> x2 <- list(
>    A = 12,
>    B = 22,
>    C = 32
> )
>
> x3 <- list(
>    A = 13,
>    B = 23,
>    C = 33
> )
>
> x4 <- list(
>    A = 14,
>    B = 24,
>    C = 34
> )
>
> y1 <- list(
>    x1 = x1,
>    x2 = x2
> )
>
> y2 <- list(
>    x3 = x3,
>    x4 = x4
> )
>
> x <- list(
>    f1 = y1,
>    f2 = y2
> )
> --8<---------------cut here---------------end--------------->8---
>
>
> To extract all fields named "A" from y1, I can do
>
> ,----
> | > sapply(y1, "[[", "A")
> | x1 x2
> | 11 12
> `----
>
> But how can I do the same for x?
>
> I could put an sapply into an sapply, but this would be less then
> elegant.
>
> Is there an easier way of doing this?
>
> Thanks,
>
> Rainer
>
>
>
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help