2016-10-28 95 views
0

我有一個嵌套列表,我想獲得每個子列表的「x」元素。什麼是最簡單的方法來做到這一點?如何遞歸訪問子列表的命名元素?

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

我actualy做在lapply使用匿名函數:

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

但爲什麼這不起作用?我應該改變什麼才能使它工作?

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

謝謝。

+0

你有一個嵌套列表 – akrun

+1

'lapply(my.list, 「[」, 「X」)'也將工作 –

+0

感謝docendo discimus!這就是我想要的。 –

回答

2

我們可以嘗試

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