在R中合并列表

7

有什么简单快捷的方法可以从以下地方到达:

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

to

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

或者一般地说:

如果列表x和y具有相同的长度,并且它们的元素也按长度对应, 如何将它们组合成一个像上面那样的单个列表?

1个回答

8

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

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

不确定它是否是最快的。如果你不想在输出中使用名称,可以将xy替换为unname(x)unname(y)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接