在R中,在样本中校准ARMA模型的系数后,如何生成在另一组样本外使用相同系数的错误?
假设insamp包含我的样本系列,我通过键入以下来校准ARMA(5,2):
det_fit = arima(insamp , c(5,0,2));
现在我想计算outamp系列上的错误(我将系列任意分为两半inamp和outamp)。
如果模型是AR(5),这就是我所做的:
detrended_outsamp_forecast_ts = det_fit$coef["intercept"] +
det_fit$coef["ar1"] * c(rep(NA,1), outsamp) +
det_fit$coef["ar2"] * c(rep(NA,2), outsamp) +
det_fit$coef["ar3"] * c(rep(NA,3), outsamp) +
det_fit$coef["ar4"] * c(rep(NA,4), outsamp) +
det_fit$coef["ar5"] * c(rep(NA,5), outsamp);
这是非常长的而不是通用的。
是否有人写过函数在任意时间序列上应用ARMA系数?
答案 0 :(得分:3)
library(forecast)
det_fit <- Arima(insamp, order=c(5,0,2))
new_fit <- Arima(outsamp, model=det_fit)