使用以前计算的值计算另一个变量

时间:2015-06-17 16:36:22

标签: r loops vector

所以我是R的新手,并且是堆栈交换/溢出的,但是现在就这样了。所以,如果我有一个矢量,我只能说它看起来像......

  

x < - 矩阵(c(1,2,3))

我想计算一个变量“Y”。 “Y”的初始值为100,所以我想使用公式Y [i] =(x + 1)*(Y [i-1])来计算Y [2],Y [3]等等for i&gt; = 2.这可以很容易地在excel中完成,我想知道代码在R中是怎么看的。我在MatLab中用循环做了这样的计算,但我听说循环就是死亡R,所以我试图避开。

提前致谢!

1 个答案:

答案 0 :(得分:0)

我不确定预期的结果,但也许这个:

x <- 1:3
n <- 5

Y <- 100 * outer(x + 1, 0:n, "^")
#     [,1] [,2] [,3] [,4]  [,5]   [,6]
#[1,]  100  200  400  800  1600   3200
#[2,]  100  300  900 2700  8100  24300
#[3,]  100  400 1600 6400 25600 102400

我已将隐式公式转换为显式公式,即Y [i] = Y [0] *(x + 1)^ i。然后我使用outer将其应用于x向量。