我有一个包含3个变量的数据集,然后我运行了一个VAR(2)并得到了它的预测。现在我只想添加'对原始数据的预测结果,然而,我似乎无法让cbind工作(我查看了合并和附加但我不能得到它们。
那么,我如何只使用原始数据集包含预测?
我拥有的是:
data(Model) #which is my dataset with data
1980:Q2 to 2014:Q2 [dates are my rows and then I have 3 columns)
library(MTS) #the package I am using to get VAR
V2= VAR(usmacro, p=2) #running the VAR(2)
FC2=VARpred(model=V2, h=4) #running forecast
现在我正在尝试将FC2的预测结果添加到我的模型'原始数据。
我的FC2输出是:
sho tan tba
[1,] 3.688 1.498 0.1272
[2,] 3.952 1.625 0.3119
Standard Errors of predictions:
[,1] [,2] [,3]
[1,] 3.520 1.519 0.6391
[2,] 3.704 1.743 0.9873
Root mean square errors of predictions:
[,1] [,2] [,3]
[1,] 3.566 1.539 0.6474
[2,] 4.804 2.861 2.2302
现在我试过了:
Fc2=data.frame(FC2) #turn output into a dataframe
FC3=Fc2[,(1:3)] # with this line I am extracting only the first 3 columns I want
NewModel=cbind(Model,FC3) #this should give me the new matrix, just with the three new rows added at the end.
但是,当我运行它时,我收到以下错误: 警告信息: 在cbind(usmacro,VP22): 结果行数不是向量长度的倍数(arg 2)
我的模型数据(尾部)显示:
[264,] 2.705383 1.433774 0.09
[265,] 1.750523 1.068212 0.05
[266,] 4.418425 1.630659 0.03
[267,] 3.439430 1.411608 0.06
[268,] -2.130694 1.328627 0.05
[269,] 3.874164 1.964367 0.03
我只想将这些预测行添加到模型数据中,如行270和271。
[1,] 3.688 1.498 0.1272
[2,] 3.952 1.625 0.3119
有关如何使这项工作的任何建议?