组合不相等的数据帧并应用计算

Combining unequal data frames and applying a calculation

我一直在做一些数据清理和回归,但现在我想应用输出,但是,我遇到了以下问题。

一个名为 "Historical" 的数据框如下所示:

Year  Value
2014   5
2015   7.5
2016   11

另一个数据框称为 "forecast",看起来像这样(未来的新年):

Year  Growth
2017   0.05
2018   0.11

等等

所以我想要一个数据框来显示从 2017 年开始的历史值和预测值 (11*1.05)

我该怎么做?

非常感谢

给定

a <- read.table(header=T, text="Year  Value
2014   5
2015   7.5
2016   11")
b <- read.table(header=T, text="
Year  Growth
2017   0.05
2018   0.11")

你可以,例如做

rbind(a, cbind(
  Year=b$Year, 
  Value=cumprod(c(tail(a$Value, 1), 1+b$Growth))[-1])
)
#   Year   Value
# 1 2014  5.0000
# 2 2015  7.5000
# 3 2016 11.0000
# 4 2017 11.5500
# 5 2018 12.8205