我正在尝试使用K. Hamed在此处发现的论文中描述的方法预先编写时间序列:http://www.sciencedirect.com/science/article/pii/S0022169409000675
这个想法是将AR(1)模型与线性趋势分量拟合到数据中以消除自相关。我希望预先提供的模型由
给出x_t = rho * x_(t-1)+ alpha + beta * t + e_t
其中x_t和x_(t-1)是时间序列的观测值,rho是自相关系数,β是趋势的斜率,e_t是不相关的噪声。不知道如何格式化方程式的道歉,我试图使用Latex语法无济于事......
无论如何,我估计参数为rho = 0.02,alpha = 0.16和beta = -0.00092
在给定这些特定参数值的情况下,如何在R中拟合AR(1)模型?我认为在init
函数中使用Arima
将允许我指定它们,但它只是将输入用作初始值。
fit <- Arima(x, order=c(1,0,0),init=c(0.02, 0.16))
此外,您如何使用具有线性趋势的通用ARIMA模型?我尝试了以下
for(t in 2:length(x)){
fit <- Arima(x, order=c(1,0,0),init=c(0.02, 0.16)) - 0.00092 * t
}
但它返回错误non numeric argument to binary operator
,我不知道如何解决这个问题。
提前致谢。
答案 0 :(得分:0)
来自forecast::Arima
文档:
Arima(x, order=c(0,0,0), seasonal=c(0,0,0),
xreg=NULL, include.mean=TRUE, include.drift=FALSE,
include.constant, lambda=model$lambda, transform.pars=TRUE,
fixed=NULL, init=NULL, method=c("CSS-ML","ML","CSS"), n.cond,
optim.control=list(), kappa=1e6, model=NULL)
你必须在xreg参数中包含一个外部回归量(即线性趋势)作为向量
xreg Optionally, a vector or matrix of external regressors, which must have the same number of rows as x.