【问题标题】:R – Populate a vector via rep with an increasing exponential valueR – 通过 rep 填充具有递增指数值的向量
【发布时间】:2022-01-01 04:16:09
【问题描述】:

我有一个这样的向量:

years <- c(2021:2091)

并且我想创建另一个向量以根据初始值绑定到它,并根据任意小数(例如 10%、15%、20%)为每一行增加类似化合物:

number = x
rep(x*(1 + .10)^n, length(years))

如何在每次增加指数的同时复制第二个向量的年长。假设年有 71 行,我需要 n 从 1 开始并运行到 71。

我试过了:

rep(x*(1 + .10)^(1:71), length(years))

但这会执行 71*71 次。每个指数只需要一个值!

希望这是有道理的,在此先感谢!

【问题讨论】:

    标签: r


    【解决方案1】:

    以下是使用函数的方法:

    future_value = function(years, x = 1, interest = 0.1) {
      x * (1 + interest) ^ (1:length(years))
    }
    

    示例输出:

    > future_value(2021:2025)
    [1] 1.10000 1.21000 1.33100 1.46410 1.61051
    
    > future_value(2021:2025, x = 2, interest = 0.15)
    [1] 2.300000 2.645000 3.041750 3.498012 4.022714
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-16
      • 2016-08-06
      相关资源
      最近更新 更多