用R做时间序列分析之ARIMA模型预测

第一步.对原始数据进行分析
一.ARIMA预测时间序列

指数平滑法对于预测来说是非常有帮助的,而且它对时间序列上面连续的值之间相关性没有要求。但是,如果你想使用指数平滑法计算出预测区间,那么预测误差必须是不相关的, 而且必须是服从零均值、 方差不变的正态分布。即使指数平滑法对时间序列连续数值之间相关性没有要求,在某种情况下,我们可以通过考虑数据之间的相关性来创建更好的预测模型。自回归移动平均模型( ARIMA) 包含一个确定(explicit)的统计模型用于处理时间序列的不规则部分,它也允许不规则部分可以自相关。

二.确定数据的差分

ARIMA 模型为平稳时间序列定义的。 因此, 如果你从一个非平稳的时间序列开始,首先你就需要做时间序列差分直到你得到一个平稳时间序列。如果你必须对时间序列做 d 阶差分才能得到一个平稳序列,那么你就使用ARIMA(p,d,q)模型,其中 d 是差分的阶数。
以每年女人裙子边缘的直径做成的时间序列数据为例。
先导入数据:
###导入在线数据,并跳过前5行
skirts <- scan(“http://robjhyndman.com/tsdldata/roberts/skirts.dat”,skip=5)
skirts<- ts(skirts,start = c(1866)) #设定时间1866开始
plot.ts(skirts) #画出图
键入下面的代码来得到时间序列(数据存于“skirtsts”) 的一阶差分, 并画出差分序列的图:
skirtsdiff<-diff(skirts,differences=1)   #一阶差分
plot.t

你可能感兴趣的:(R与数据分析)