我会在R中拟合一个以温度为外生变量的SARIMAX模型。我能用package TSA中的xreg函数做到这一点吗?我认为可以将模型拟合为:
fit1 = arima(x, order=c(p,d,q), seasonal=list(order=c(P,D,Q), period=S), xreg=temp)
是正确的还是我必须使用R的其他功能?如果它不正确:我应该使用哪些步骤?
谢谢。
发布于 2013-07-24 01:24:14
看看预测包,它很棒:
# some random data
x <- ts(rnorm(120,0,3) + 1:120 + 20*sin(2*pi*(1:120)/12), frequency=12)
temp = rnorm(length(x), 20, 30)
require(forecast)
# build the model (check ?auto.arima)
model = auto.arima(x, xreg = data.frame(temp = temp))
# some random predictors
temp.reg = data.frame(temp = rnorm(10, 20, 30))
# forecasting
forec = forecast(model, xreg = temp.reg)
# quick way to visualize things
plot(forec)
# model diagnosis
tsdiag(model)
# model info
summary(forec)发布于 2014-03-12 20:42:12
我不建议您使用auto.arima()。根据您想要拟合的模型,它可能会返回较差的结果,例如,当使用一些复杂的SARIMA模型时,手动和auto.arima()完成的模型之间的差异是明显的,auto.arima()甚至不会返回白噪声创新(正如它所预期的),而手动拟合,当然会。
https://stackoverflow.com/questions/17816868
复制相似问题