我有一个简单的任务,但我很难描述它并在stackoverflow上找到它。
我有三个载体
v1 <- c(1,1,1,1,1)
v2 <- c(2,2,2,2,2)
v3 <- c(3,3,3,3,3)
如何以元素方式组合它们,从而产生:
c(1,2,3,1,2,3,1,2,3,1,2,3,1,2,3)
我知道我可以通过rep(c(1,2,3), 5)
获取此向量,我正在为所有相同长度的向量寻找通用解决方案。
答案 0 :(得分:2)
foo = function(...){
L = list(...)
c(matrix(unlist(L), length(L), byrow = TRUE))
}
foo(v1, v2, v3)
# [1] 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
答案 1 :(得分:0)
你可以用这个:
as.vector(apply(mapply(c, list(v1,v2,v3)),1,c))