r语言中forecast.arima和predict的区别

Python012

r语言中forecast.arima和predict的区别,第1张

举一个例子吧,比如月度的数据,就是周期为12,它有季节影响。先对其1阶12步差分,通过看acf pac f看是简单加法模型,还是乘法季节模型如果是乘法模型那就要对季节部分模拟arima模型 季节部分的arima是以周期位置的acf pacf 确定其模型参数 ar maseasonal=list(order=c(_,1,_),period=_)周期是默认的------------------------------------------------------------教你一个简单的方法:下载 forecast包,auto.arima( ) 直接拟合,就会给出系统认为的arima模型的各个参数。然后 forecast( h=预测期数)行了。这是对外行人来说的,但是如果你真的想学好的话,还需要对模型进行着各种检验,特别是残差。

ARIMA有现成的东西

nobs=length(data_set)

fit=arima(data_set, order=c(1,1,1), xreg=1:nobs)

fore=predict(fit, 15, newxreg=(nobs+1):(nobs+15))

arima 是fit模型

predict 是预测

ts.plot 是按时间画图

好吧。。。希望对你有用~~~~~~~~~~~~~

预测的话,应该用接下来的时间,所以应该是预测2014,2015....

程序如下:

new<-data.frame(year=2014)

lm.pred<-predict(z,new,interval="prediction",level=0.95)

lm.pred

解释:第一行表示输入新的点year=2014,注意,即使就一个点,也要采用数据框结构;第二行的函数predict()给出相应的预测值,参数interval="prediction"表示同时要给出相应的置信区间,参数level=0.95表示相应的概率为0.95.这个参数也可以不写,因为它的缺省值为0.95.

你提到的2013的数据不是预测,而是拟合。我们可以通过得到的模型对原来的year这个变量的数据进行拟合。

程序如下:

fit<-fitted(z)

fit

得到的就是在你得到的模型下2006-2013这8年的拟合值了。

希望能对你有所帮助~