2013-07-25 78 views
7

什么将是一个方便,快捷的方式来获得:合并列表中的R

x <- list(a1=2, b1=c(1,2), c1=1:3) 
y <- list(a2=5, b2=c(2,5), c2=2:4) 

list(list(x$a1, y$a2), list(x$b1, y$b2), list(x$c1, y$c2)) 

或一般而言:

如果列表X和Y具有相同的长度和它们的元素也对应于长度, 怎么能如上所示组合成单个列表?

回答

8

一个简单的方法是使用mapply如下:

如果
mapply(x, y, FUN=list, SIMPLIFY=FALSE) 

不知道它的,虽然是最快的。如果您不需要输出中的名称,则可以用unname(x)unname(y)替换xy

+0

谢谢。这正是我所寻找的。 – Florian