我需要一个创建新向量的规则,使得第一个元素=向量1的第一个元素,第二个元素=向量1的第二个元素和向量2的第一个元素的总和,第三个元素=第三个元素的总和向量1的元素,向量2的第二个元素和向量3的第一个元素,......,最后一个元素是最后一个向量的最后一个元素。
例如,有两个向量(v1,v2),
v1 <- c(1, 2, 3)
v2 <- c(4, 5, 6)
new.vector <- c(1, 6, 8, 6)
非常感谢所有建议!
答案 0 :(得分:2)
如何将前导0和后缀0分别添加到v1和v2:
c(v1, 0) + c(0, v2)
使其成为一种功能:
f <- function(v1, v2) c(v1, 0) + c(0, v2)
答案 1 :(得分:1)
c(v1[1], v2+c(v1[-1],0))
#[1] 1 6 8 6
如果你想要放入一个功能
foo = function(x, y){
return(c(x[1], y+c(x[-1],0)))
}
foo(v1, v2)
#[1] 1 6 8 6