【发布时间】:2017-04-15 15:17:26
【问题描述】:
我想对某个问题有一个通用的解决方案。 我有一个嵌套列表;这个列表的每个元素都是一个带有命名元素的列表。例如:
mylist <- list(
list(x1 = 1:10, x2 = letters[1:5]),
list(x1 = 11:14, x2 = letters[6:15])
)
这里mylist[[1]] 和mylist[[2]] 都有向量x1 和x2。
我想连接所有的x1向量和x2向量,比如得到:
c(mylist[[1]]$x1, mylist[[2]]$x1)
c(mylist[[1]]$x2, mylist[[2]]$x2)
但对于mylist 可能具有n 元素的一般情况。
如果我事先知道mylist 只有两个元素,那么我可以使用
do.call(function(a,b) c(a$x1, b$x1), mylist)
do.call(function(a,b) c(a$x2, b$x2), mylist)
但我不知道如何将其概括为 n 元素。
【问题讨论】:
-
见
?.mapply--.mapply(c, mylist, NULL)或者,更方便的界面do.call(Map, c(c, mylist))
标签: r