R代码迭代

时间:2014-03-23 02:34:12

标签: r iteration

我的目标是使用iter

在R中生成此向量
0 + 1 = 1,

1 + 2 = 3,

3 + 3 = 6,

6 + 4 = 10

我尝试了下面的代码,但它没有给我正确的数字:

iter <- 4
w_vector <- rep(0, iter)
for(i in 1:iter) {w_vector[i] <-sum(i, i-1)
                  print(w_vector[i])
}

如果你能帮助我修改我的代码,我将非常感激。

1 个答案:

答案 0 :(得分:4)

你可以这样做:

w_vector <- cumsum(seq(iter))
w_vector
# [1]  1  3  6 10

否则,使用for循环,您的代码应如下所示:

iter <- 4
w_vector <- rep(0, iter)
w_vector[1] <- 1
for(i in 2:iter) {
  w_vector[i] <- w_vector[i-1] + i
}
w_vector
# [1]  1  3  6 10