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@r-project.org mailing list -- To UNSUBSCRIBE and more, see
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.


______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
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.

Reply via email to