原文链接:http://tecdat.cn/?p=5421
原文出处:拓端数据部落公众号
本文是咱们通过工夫序列和ARIMA模型预测拖拉机销售的制作案例钻研示例的连续。您能够在以下链接中找到以前的局部:
第1局部 :工夫序列建模和预测简介
第2局部:在预测之前将工夫序列合成为解密模式和趋势
第3局部:ARIMA预测模型简介
ARIMA模型 - 制作案例钻研示例
回到咱们的制作案例钻研示例,筹备好开始剖析,以预测将来3年的拖拉机销售状况。
步骤1:将拖拉机销售数据绘制为工夫序列
首先,您已为数据筹备了工夫序列图。以下是您用于读取R中的数据并绘制工夫序列图表的R代码。
data = ts(data\[,2\],start = c(2003,1),frequency = 12)plot(data, xlab='Years', ylab = 'Tractor Sales')
显然,下面的图表有拖拉机销售的回升趋势,还有一个季节性。
第2步:差分数据使数据在平均值上放弃不变(删除趋势)
用于绘制差别系列的R代码和输入显示如下:
plot(diff(data),ylab='Differenced Tractor Sales')
好的,所以下面的系列在方差上不是固定的,即随着咱们向图表右侧挪动,图中的变动也在减少。咱们须要使系列在方差上保持稳定,以通过ARIMA模型产生牢靠的预测。
步骤3:记录变换数据以使数据在方差上放弃不变
使系列在方差上放弃静止的最佳办法之一是通过对数变换转换原始系列。
以下是与输入图雷同的R代码。请留神,因为咱们在没有差分的状况下应用原始数据,因而该系列不是平均值。
plot(log10(data),ylab='Log (Tractor Sales)')
当初方差上看起来很稳固。
步骤4: 差分对数变换数据使得数据在均值和方差上都是固定的
让咱们看一下对数变换序列的差分图 。
plot(diff(log10(data)),ylab='Differenced Log (Tractor Sales)')
是的,当初这个系列在均值和方差上看起来都很稳固。
步骤5: 绘制ACF和PACF以辨认潜在的AR和MA模型
当初,让咱们创立自相干因子(ACF)和局部自相干因子(PACF)图来辨认上述数据中的模式,这些模式在均值和方差上都是固定的。该想法是辨认残差中AR和MA组分的存在。以下是生成ACF和PACF图的R代码。
因为,在有效区域(虚线水平线)之外的图中有足够的尖峰,咱们能够得出结论,残差不是随机的。这意味着AR和MA模型能够提取残差中的果汁或信息。此外,在滞后12处的残差中存在可用的季节性重量(由滞后12处的尖峰示意)。这是有情理的,因为咱们正在剖析因为拖拉机销售模式而往往具备12个月季节性的月度数据。
步骤6: 确定最佳拟合ARIMA模型
R中的预测包中的主动动静性能有助于咱们即时辨认最适宜的ARIMA模型。以下是雷同的代码。请在执行此代码之前在R中装置所需的“预测”包。
ARIMAfit = auto.arima(log10(data), approximation=FALSE,trace=FALSE)summary(ARIMAfit)
工夫序列:log 10(拖拉机销售)最佳版型:ARIMA(0,1,1)(0,1,1)[12] MA1SMA1系数:-0.4047-0.5529SE0.08850.0734对数似然= 354.4AIC = -702.79AICC = -702.6BIC = -694.17
基于Akaike信息准则(AIC)和贝叶斯信息准则(BIC)值抉择最佳拟合模型。咱们的想法是抉择具备最小AIC和BIC值的模型。咱们将在下一篇文章中探讨无关AIC和BIC的更多信息。在R中开发的最佳拟合模型的AIC和BIC值显示在以下后果的底部:
正如预期的那样,咱们的模型具备等于1的I(或积分)重量。这示意阶数1的差分。在上述最佳拟合模型中存在滞后12的附加差分。此外,最佳拟合模型具备1阶的MA值。此外,存在具备阶数1的滞后12的季节性MA。
第6步:应用最合适的 ARIMA模型预测销售状况
下一步是通过上述模型预测将来3年(即2015年,2016年和2017年)的拖拉机销量。以下R代码为咱们实现了这项工作。
par(mfrow = c(1,1))lines(10^(pred$pred-2*pred$se),col='orange')
以下是拖拉机销售预测值为蓝色的输入。此外,预测误差的范畴(即标准偏差的2倍)在预测蓝线的两侧显示橙色线。
当初,长达3年的预测是一项雄心勃勃的工作。这里的次要假如是工夫序列中的下划线模式将持续放弃与模型中预测的雷同。短期预测模型,比方几个营业季度或一年,通常是一个正当精确的预测。像上述那样的长期模型须要定期评估(比方6个月)。咱们的想法是将可用的新信息与模型中的时间推移相结合。
步骤7:为ACIM和PACF绘制ARIMA模型的残差
最初,让咱们创立一个ACF和PACF的最佳拟合ARIMA模型残差的图,即ARIMA(0,1,1)(0,1,1)[12]。以下是雷同的R代码。
pacf(ts(ARIMAfit$residuals),main='PACF Residual')
因为ACF和PACF图的有效区域之外没有尖峰,咱们能够得出结论,残差是随机的。
最受欢迎的见解
1.在python中应用lstm和pytorch进行工夫序列预测
2.python中利用长短期记忆模型lstm进行工夫序列预测剖析
3.应用r语言进行工夫序列(arima,指数平滑)剖析
4.r语言多元copula-garch-模型工夫序列预测
5.r语言copulas和金融工夫序列案例
6.应用r语言随机稳定模型sv解决工夫序列中的随机稳定
7.r语言工夫序列tar阈值自回归模型
8.r语言k-shape工夫序列聚类办法对股票价格工夫序列聚类
9.python3用arima模型进行工夫序列预测