【问题标题】:Using Previously Calculated Values To Calculate another Variable使用先前计算的值来计算另一个变量
【发布时间】:2015-09-03 00:48:41
【问题描述】:

所以我是 R 和 stackexchange/overflow 的新手,但它就在这里。所以如果我有一个向量,就说它看起来像......

x

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

提前致谢!

【问题讨论】:

    标签: r loops vector


    【解决方案1】:

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

    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 向量。

    【讨论】:

    • 感谢您的回复。我认为我想要的输出是单列向量。所以这不是我们想要的输出。另外 Y[i] = Y[0] * (x + 1) ^ i 不是我输入的公式, Y[i]=(x+1)*(Y[i-1]) 是。谢谢您的帮助!我想我可能可以玩弄外部函数来找到解决方法。
    • 好吧,在你的问题中显示预期的输出。我的公式应该给出与你相同的值。这是基本的数学。
    • 重读我的评论,结果比预期的要激进一些,但还是谢谢你。
    猜你喜欢
    • 2019-10-12
    • 2013-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-08
    • 1970-01-01
    相关资源
    最近更新 更多