如何递归访问子列表的命名元素?

时间:2016-10-28 08:28:43

标签: r

我有一个嵌套列表,我想得到" x"每个子列表的元素。最简单的方法是什么?

my.list <- list(a = list(x = 1, y = 1), 
                b = list(x = 2, y = 2), 
                c = list(x = 3, y = 3))

我实际上是使用lapply中的匿名函数来执行此操作:

lapply(my.list, function(x) x$x)

但为什么这不起作用?我应该改变什么来使它工作?

lapply(my.list, `$`, name = `x`)

谢谢。

1 个答案:

答案 0 :(得分:2)

我们可以尝试

sapply(my.list, `[[`, "x")
# a b c 
#1 2 3