使用R语言进行时间序列(arima,指数平滑)分析(上):https://developer.aliyun.com/article/1493892
这里1913-1920的预测绘制为蓝线,80%预测间隔绘制为橙色阴影区域,95%预测间隔绘制为黄色阴影区域。
对于每个时间点,“预测误差”被计算为观测值减去预测值。我们只能计算原始时间序列所涵盖的时间段的预测误差,即降雨数据的1813-1912。如上所述,预测模型准确性的一个度量是样本内预测误差的平方误差和(SSE)。
样本内预测错误存储在forecast.HoltWinters()返回的列表变量的命名元素“residuals”中。如果无法改进预测模型,则连续预测的预测误差之间不应存在相关性。换句话说,如果连续预测的预测误差之间存在相关性,则可能通过另一种预测技术可以改进简单的指数平滑预测。
为了弄清楚是否是这种情况,我们可以获得滞后1-20的样本内预测误差的相关图。我们可以使用R中的“acf()”函数计算预测误差的相关图。要指定我们想要查看的最大滞后,我们在acf()中使用“lag.max”参数。
例如,为了计算伦敦降雨数据的样本内预测误差的相关图,我们输入:
> acf(rainseriesforecasts2$residuals, lag.max=20)
您可以从示例相关图中看到滞后3处的自相关刚刚触及显着边界。为了测试是否存在滞后1-20的非零相关性的重要证据,我们可以进行Ljung-Box测试。这可以使用“Box.test()”函数在R中完成。我们想要查看的最大延迟是使用Box.test()函数中的“lag”参数指定的。例如,要测试是否存在滞后1-20的非零自相关,对于伦敦降雨数据的样本内预测误差,我们键入:
> Box.test(rainseriesforecasts2$residuals, lag=20, type="Ljung-Box") Box-Ljung test data: rainseriesforecasts2$residuals X-squared = 17.4008, df = 20, p-value = 0.6268
这里的Ljung-Box检验统计量为17.4,p值为0.6,因此几乎没有证据表明样本预测误差在1-20落后存在非零自相关。
为了确保预测模型无法改进,检查预测误差是否正态分布均值为零和恒定方差也是一个好主意。要检查预测误差是否具有恒定方差,我们可以制作样本内预测误差的时间图:
> plot.ts(rainseriesforecasts2$residuals)
该图显示样本内预测误差似乎随时间变化大致不变,尽管时间序列(1820-1830)开始时波动的大小可能略小于后期日期(例如1840年) -1850)。
为了检查预测误差是否正态分布为均值为零,我们可以绘制预测误差的直方图,其中覆盖的正态曲线具有平均零和标准差与预测误差的分布相同。为此,我们可以在下面定义一个R函数“plotForecastErrors()”:
您必须将上述功能复制到R中才能使用它。然后,您可以使用plotForecastErrors()绘制降雨预测的预测误差的直方图(具有重叠的正常曲线):
> plotForecastErrors(rainseriesforecasts2$residuals)
该图显示预测误差的分布大致以零为中心,并且或多或少地正态分布,尽管与正常曲线相比,它似乎略微偏向右侧。然而,右倾斜相对较小,因此预测误差通常以均值0分布是合理的。
Ljung-Box测试表明,样本内预测误差中几乎没有非零自相关的证据,预测误差的分布似乎正常分布为均值为零。这表明简单的指数平滑方法为伦敦降雨提供了一个充分的预测模型,这可能无法改进。此外,80%和95%预测区间基于的假设(预测误差中没有自相关,预测误差通常以均值零和恒定方差分布)可能是有效的。
霍尔特的指数平滑
如果您的时间序列可以使用趋势增加或减少且没有季节性的加法模型来描述,则可以使用Holt的指数平滑来进行短期预测。
霍尔特的指数平滑估计当前时间点的水平和斜率。平滑由两个参数α控制,用于估计当前时间点的水平,β用于估计当前时间点的趋势分量的斜率b。与简单的指数平滑一样,参数alpha和beta的值介于0和1之间,接近0的值意味着在对未来值进行预测时,对最近的观察值的重要性很小。
时间序列的一个例子可以使用具有趋势和没有季节性的加法模型来描述女性裙子在1866年到1911年的年度直径的时间序列。 过输入以下内容读入并绘制R中的数据:
> skirtsseries <- ts(skirts,start=c(1866)) > plot.ts(skirtsseries)
从图中我们可以看出,直径从1866年的约600增加到1880年的约1050,之后在1911年,下摆直径减少到约520。
为了进行预测,我们可以使用R中的HoltWinters()函数拟合预测模型。要使用HoltWinters()进行Holt的指数平滑,我们需要设置参数gamma = FALSE(gamma参数用于Holt-Winters指数平滑,如下所述)。
例如,要使用Holt的指数平滑来拟合裙摆直径的预测模型,我们键入:
> skirtsseriesforecasts <- HoltWinters(skirtsseries, gamma=FALSE) > skirtsseriesforecasts Smoothing parameters: alpha: 0.8383481 beta : 1 gamma: FALSE Coefficients: [,1] a 529.308585 b 5.690464 > skirtsseriesforecasts$SSE [1] 16954.18
α的估计值为0.84,β的估计值为1.00。这些都很高,告诉我们水平的当前值和趋势分量的斜率b的估计主要基于时间序列中的最近观察。这具有良好的直观感,因为时间序列的水平和斜率都会随着时间的推移而发生很大变化。样本内预测误差的平方和误差的值是16954。
我们可以将原始时间序列绘制为黑色线条,其中预测值为红线,通过键入:
> plot(skirtsseriesforecasts)
我们从图中可以看出,样本内预测与观测值非常吻合,尽管它们往往略微落后于观测值。
如果需要,可以使用HoltWinters()函数的“l.start”和“b.start”参数指定趋势分量的级别和斜率b的初始值。通常将水平的初始值设置为时间序列中的第一个值(裙边数据为608),并将斜率的初始值设置为第二个值减去第一个值(裙边数据为9)。例如,为了使用Holt的指数平滑拟合裙边折边数据的预测模型,水平的初始值为608,趋势分量的斜率b为9,我们输入:
> HoltWinters(skirtsseries, gamma=FALSE, l.start=608, b.start=9)
对于简单的指数平滑,我们可以使用“forecast”包中的forecast.HoltWinters()函数对原始时间序列未涵盖的未来时间进行预测。例如,我们的裙摆下摆的时间序列数据是1866年至1911年,因此我们可以预测1912年至1930年(另外19个数据点),并通过输入以下内容绘制:
> skirtsseriesforecasts2 <- forecast.HoltWinters(skirtsseriesforecasts, h=19) > plot.forecast(skirtsseriesforecasts2)
预测显示为蓝线,80%预测区间为橙色阴影区域,95%预测区间为黄色阴影区域。
对于简单的指数平滑,我们可以通过检查样本内预测误差是否在滞后1-20处显示非零自相关来检查是否可以改进预测模型。例如,对于裙边折边数据,我们可以制作一个相关图,并通过键入以下内容来执行Ljung-Box测试:
> acf(skirtsseriesforecasts2$residuals, lag.max=20) > Box.test(skirtsseriesforecasts2$residuals, lag=20, type="Ljung-Box") Box-Ljung test data: skirtsseriesforecasts2$residuals X-squared = 19.7312, df = 20, p-value = 0.4749
此处相关图显示滞后5处的样本内预测误差的样本自相关超过了显着性边界。然而,我们预计前20个国家中20个自相关中有一个仅仅偶然地超过95%的显着性界限。实际上,当我们进行Ljung-Box检验时,p值为0.47,表明在1-20落后的样本内预测误差中几乎没有证据表明存在非零自相关。
对于简单的指数平滑,我们还应检查预测误差随时间的变化是否恒定,并且通常以均值0分布。我们可以通过制作预测误差的时间图和预测误差分布的直方图以及覆盖的正常曲线来做到这一点:
> plot.ts(skirtsseriesforecasts2$residuals) # 绘制时间序列图 > plotForecastErrors(skirtsseriesforecasts2$residuals) # 绘制直方图
预测误差的时间图表明预测误差随时间变化大致不变。预测误差的直方图表明,预测误差通常以均值零和常数方差分布是合理的。
因此,Ljung-Box测试表明,预测误差中几乎没有自相关的证据,而预测误差的时间图和直方图表明,预测误差通常以均值零和常数方差分布是合理的。因此,我们可以得出结论,霍尔特的指数平滑为裙摆直径提供了足够的预测模型,这可能无法改进。此外,这意味着80%和95%预测区间所基于的假设可能是有效的。
Holt-Winters指数平滑
如果您有一个时间序列可以使用增加或减少趋势和季节性的加法模型来描述,您可以使用Holt-Winters指数平滑来进行短期预测。
Holt-Winters指数平滑估计当前时间点的水平,斜率和季节性分量。平滑由三个参数控制:α,β和γ,分别用于当前时间点的水平估计,趋势分量的斜率b和季节分量。参数alpha,beta和gamma都具有介于0和1之间的值,并且接近0的值意味着在对未来值进行预测时对最近的观察值的权重相对较小。
可以使用具有趋势和季节性的附加模型描述的时间序列的示例是澳大利亚昆士兰州的海滩度假小镇纪念品商店的月销售日志的时间序列(如上所述):
为了进行预测,我们可以使用HoltWinters()函数拟合预测模型。例如,为了拟合纪念品商店每月销售日志的预测模型,我们输入:
> logsouvenirtimeseries <- log(souvenirtimeseries) > souvenirtimeseriesforecasts <- HoltWinters(logsouvenirtimeseries) > souvenirtimeseriesforecasts Holt-Winters exponential smoothing with trend and additive seasonal component. Smoothing parameters: alpha: 0.413418 beta : 0 gamma: 0.9561275 Coefficients: [,1] a 10.37661961 b 0.02996319 s1 -0.80952063 s2 -0.60576477 s3 0.01103238 s4 -0.24160551 s5 -0.35933517 s6 -0.18076683 s7 0.07788605 s8 0.10147055 s9 0.09649353 s10 0.05197826 s11 0.41793637 s12 1.18088423 > souvenirtimeseriesforecasts$SSE 2.011491
α,β和γ的估计值分别为0.41,0.00和0.96。α(0.41)的值相对较低,表明当前时间点的水平估计是基于最近的观察和更远的过去的一些观察。β的值为0.00,表示趋势分量的斜率b的估计值不在时间序列上更新,而是设置为等于其初始值。这具有良好的直观感,因为水平在时间序列上发生了相当大的变化,但趋势分量的斜率b保持大致相同。相反,伽马值(0.96)很高,表明当前时间点的季节性成分估计仅基于最近的观察。
对于简单的指数平滑和Holt的指数平滑,我们可以将原始时间序列绘制为黑色线条,预测值为红线,顶部为:
> plot(souvenirtimeseriesforecasts)
我们从图中看到,Holt-Winters指数法非常成功地预测了季节性峰值,这种峰值大致发生在每年的11月。
为了对未包含在原始时间序列中的未来时间进行预测,我们在“预测”包中使用“forecast.HoltWinters()”函数。例如,纪念品销售的原始数据是从1987年1月到1993年12月。如果我们想要预测1994年1月至1998年12月(48个月以上),并绘制预测图,我们将输入:
> souvenirtimeseriesforecasts2 <- forecast.HoltWinters(souvenirtimeseriesforecasts, h=48) > plot.forecast(souvenirtimeseriesforecasts2)
预测显示为蓝线,橙色和黄色阴影区域分别显示80%和95%的预测间隔。
我们可以通过检查样本内预测误差是否在滞后1-20处显示非零自相关,通过制作相关图并执行Ljung-Box测试来研究是否可以改进预测模型:
> acf(souvenirtimeseriesforecasts2$residuals, lag.max=20) > Box.test(souvenirtimeseriesforecasts2$residuals, lag=20, type="Ljung-Box") Box-Ljung test data: souvenirtimeseriesforecasts2$residuals X-squared = 17.5304, df = 20, p-value = 0.6183
相关图表明,样本内预测误差的自相关不超过滞后1-20的显着性界限。此外,Ljung-Box检验的p值为0.6,表明在滞后1-20处几乎没有证据表明存在非零自相关。
我们可以通过制作预测误差和直方图(具有重叠的正常曲线)的时间图来检查预测误差是否随时间具有恒定的方差,并且通常以均值0分布:
> plot.ts(souvenirtimeseriesforecasts2$residuals) # 绘制时间序列 > plotForecastErrors(souvenirtimeseriesforecasts2$residuals) # 绘制直方图
从时间图中可以看出,预测误差随时间变化具有恒定的变化。根据预测误差的直方图,预测误差通常以均值零分布似乎是合理的。
因此,对于预测误差,几乎没有证据表明在滞后1-20处存在自相关,并且预测误差似乎正态分布,均值为零,且随时间变化恒定。这表明Holt-Winters指数平滑提供了纪念品商店销售记录的充分预测模型,这可能无法改进。此外,预测区间所基于的假设可能是有效的。
ARIMA模型
指数平滑方法对于进行预测是有用的,并且不对时间序列的连续值之间的相关性做出假设。但是,如果要对使用指数平滑方法进行的预测进行预测间隔,则预测间隔要求预测误差不相关,并且通常以均值零和常数方差分布。
虽然指数平滑方法不对时间序列的连续值之间的相关性做出任何假设,但在某些情况下,您可以通过考虑数据中的相关性来建立更好的预测模型。自回归整合移动平均(ARIMA)模型包括时间序列的不规则分量的显式统计模型,其允许不规则分量中的非零自相关。
差分时间序列
ARIMA模型定义为固定时间序列。因此,如果您从一个非平稳的时间序列开始,您将首先需要“差分”时间序列,直到您获得一个稳定的时间序列。如果你必须将时间序列d次除以获得一个稳定序列,那么你有一个ARIMA(p,d,q)模型,其中d是差分的使用顺序。
你可以使用R中的“diff()”函数来区分时间序列。例如,从1866年到1911年,女性裙子在1866年到1911年的年直径的时间序列并不是平稳的,因为水平变化很大随着时间的推移:
我们可以将时间序列(我们存储在“裙子系列”中,见上文)差分一次,并通过输入以下内容绘制差分序列:
> skirtsseriesdiff1 <- diff(skirtsseries, differences=1) > plot.ts(skirtsseriesdiff1)
由此产生的一阶差分的时间序列(上图)似乎并不是平稳的。因此,我们可以将时间序列差分两次,看看是否为我们提供了一个平稳的时间序列:
> skirtsseriesdiff2 <- diff(skirtsseries, differences=2) > plot.ts(skirtsseriesdiff2)
平稳性测试
fUnitRoots包中提供了称为“单位根测试”的平稳性测试。
二阶差分的时间序列(上图)在均值和方差中似乎是平稳的,因为序列的水平随时间保持大致恒定,并且序列的方差随时间显得大致恒定。因此,似乎我们需要将裙子直径的时间序列差分两次以实现平稳序列。
如果您需要将原始时间序列数据区分d次以获得固定时间序列,这意味着您可以为时间序列使用ARIMA(p,d,q)模型,其中d是使用差分的顺序。例如,对于女性裙子直径的时间序列,我们必须将时间序列区分两次,因此差分阶数为2.这意味着您可以使用ARIMA(p,2,q)你的时间序列的模型。下一步是计算ARIMA模型的p和q值。
另一个例子是英格兰历代国王的死亡时间序列(见上文):
从时间图(上图),我们可以看出时间序列不是平均值。要计算第一个差分的时间序列并绘制它,我们键入:
> kingtimeseriesdiff1 <- diff(kingstimeseries, differences=1) > plot.ts(kingtimeseriesdiff1)
第一个差分的时间序列在均值和方差上似乎是固定的,因此ARIMA(p,1,q)模型可能适合于英格兰国王的死亡年龄的时间序列。通过采用一阶的时间序列,我们删除了国王死亡时代的时间序列的趋势分量,并留下不规则的成分。我们现在可以检查这个不规则分量的连续项之间是否存在相关性; 如果是这样,这可以帮助我们为国王死亡的年龄做出预测模型。
选择候选ARIMA模型
如果您的时间序列是平稳的,或者您通过差分d次将其转换为平稳时间序列,则下一步是选择适当的ARIMA模型,这意味着为ARIMA找到最合适的p和q值的值(p,d,q)模型。为此,您通常需要检查平稳时间序列的相关图和偏相关图。
要绘制相关图和偏相关图,我们可以分别使用R中的“acf()”和“pacf()”函数。为了获得自相关和偏自相关的实际值,我们在“acf()”和“pacf()”函数中设置“plot = FALSE”。
英国国王死亡时代的例子
例如,为了绘制英格兰国王死亡时间的一阶差分时间序列的滞后1-20的相关图,并获得自相关的值,我们输入:
> acf(kingtimeseriesdiff1, lag.max=20) # 绘制相关图 > acf(kingtimeseriesdiff1, lag.max=20, plot=FALSE) # 得到自相关系数 0 1 2 3 4 5 6 7 8 9 10 1.000 -0.360 -0.162 -0.050 0.227 -0.042 -0.181 0.095 0.064 -0.116 -0.071 11 12 13 14 15 16 17 18 19 20 0.206 -0.017 -0.212 0.130 0.114 -0.009 -0.192 0.072 0.113 -0.093
我们从相关图中看到,滞后1(-0.360)处的自相关超过了显着边界,但是滞后1-20之间的所有其他自相关都没有超过显着边界。
为了绘制英语国王死亡时间的一阶差分时间序列的滞后1-20的偏相关图,并获得偏自相关的值,我们使用“pacf()”函数,键入:
> pacf(kingtimeseriesdiff1, lag.max=20) # 绘制偏相关图 > pacf(kingtimeseriesdiff1, lag.max=20, plot=FALSE) # 得到偏相关系数 Partial autocorrelations of series 'kingtimeseriesdiff1', by lag 1 2 3 4 5 6 7 8 9 10 11 -0.360 -0.335 -0.321 0.005 0.025 -0.144 -0.022 -0.007 -0.143 -0.167 0.065 12 13 14 15 16 17 18 19 20 0.034 -0.161 0.036 0.066 0.081 -0.005 -0.027 -0.006 -0.037
偏相关图显示滞后1,2和3的偏自相关超过显着边界,为负,并且随着滞后的增加而在幅度上缓慢下降(滞后1:-0.360,滞后2:-0.335,滞后3:-0.321 )。在滞后3之后,偏自相关变为零。
由于在滞后1之后相关图为零,并且在滞后3之后偏相关图变为零,这意味着对于第一差分的时间序列,以下ARMA(自回归移动平均)模型是可能的:
- ARMA(3,0)模型,即阶数为p = 3的自回归模型,因为偏自相关图在滞后3之后为零,并且自相关图结束为零(尽管可能过于突然,因为该模型是合适的)
- 一个ARMA(0,1)模型,即q = 1的移动平均模型,因为自相关图在滞后1之后为零,而偏自相关图结束为零
- 一个ARMA(p,q)模型,即p和q大于0的混合模型,因为自相关图和偏相关图尾部为零(尽管相关图可能会突然变为零,因为该模型是合适的)
我们使用简约原理来确定哪个模型最好:也就是说,我们假设参数最少的模型是最好的。ARMA(3,0)模型具有3个参数,ARMA(0,1)模型具有1个参数,ARMA(p,q)模型具有至少2个参数。因此,ARMA(0,1)模型被认为是最佳模型。
ARMA(0,1)模型是阶数1或MA(1)模型的移动平均模型。这个模型可以写成:X_t - mu = Z_t - (theta * Z_t-1),其中X_t是我们正在研究的平稳时间序列(英国国王死亡时的第一个不同年龄系列),mu是平均值时间序列X_t,Z_t是具有平均零和恒定方差的白噪声,并且theta是可以估计的参数。
MA(移动平均)模型通常用于模拟时间序列,该时间序列显示连续观察之间的短期依赖性。直觉上,很有意义的是,MA模型可以用来描述英国国王死亡时间序列中的不规则成分,因为我们可以预期特定英国国王的死亡年龄对年龄有一定影响。在接下来的一两个国王的死亡,但对国王死亡的年龄影响不大,在那之后更长的统治时间。
auto.arima()函数
auto.arima()函数可用于查找适当的ARIMA模型,例如,键入“library(forecast)”,然后键入“auto.arima(kings)”。输出说适当的模型是ARIMA(0,1,1)。
由于ARMA(0,1)模型(p = 0,q = 1)被认为是英国国王死亡年龄的第一个差分的时间序列的最佳候选模型,那么原始的时间序列死亡年龄可以使用ARIMA(0,1,1)模型建模(p = 0,d = 1,q = 1,其中d是所需差分的顺序)。
使用ARIMA模型进行预测
为时间序列数据选择最佳候选ARIMA(p,d,q)模型后,您可以估计该ARIMA模型的参数,并将其用作预测模型,以便对时间序列的未来值进行预测。
您可以使用R中的“arima()”函数估计ARIMA(p,d,q)模型的参数。
英国国王死亡时代的例子
例如,我们在上面讨论过,ARIMA(0,1,1)模型似乎是英格兰国王死亡年龄的合理模型。您可以使用R中“arima()”函数的“order”参数在ARIMA模型中指定p,d和q的值。使ARIMA(p,d,q)模型适合此时间序列(我们存储在变量“kingstimeseries”中,见上文),我们输入:
> kingstimeseriesarima <- arima(kingstimeseries, order=c(0,1,1)) # 拟合 ARIMA(0,1,1) 模型 > kingstimeseriesarima ARIMA(0,1,1) Coefficients: ma1 -0.7218 s.e. 0.1208 sigma^2 estimated as 230.4: log likelihood = -170.06 AIC = 344.13 AICc = 344.44 BIC = 347.56
如上所述,如果我们将ARIMA(0,1,1)模型拟合到我们的时间序列,则意味着我们将ARMA(0,1)模型拟合到第一个差分的时间序列。可以写入ARMA(0,1)模型X_t-mu = Z_t - (theta * Z_t-1),其中theta是要估计的参数。根据“arima()”R函数(上图)的输出,在拟合ARIMA(0,1,1)模型的情况下,theta的估计值(在R输出中给定为'ma1')为-0.7218到国王死亡的时间序列。
指定预测间隔的置信度
您可以使用“level”参数在forecast.Arima()中指定预测间隔的置信度。例如,要获得99.5%的预测间隔,我们将键入“forecast.Arima(kingstimeseriesarima,h = 5,level = c(99.5))”。
然后,我们可以使用ARIMA模型使用“预测”R包中的“forecast.Arima()”函数对时间序列的未来值进行预测。例如,为了预测接下来的五位英国国王的死亡年龄,我们输入:
> library("forecast") #读取软件包 > kingstimeseriesforecasts <- forecast.Arima(kingstimeseriesarima, h=5) > kingstimeseriesforecasts Point Forecast Lo 80 Hi 80 Lo 95 Hi 95 43 67.75063 48.29647 87.20479 37.99806 97.50319 44 67.75063 47.55748 87.94377 36.86788 98.63338 45 67.75063 46.84460 88.65665 35.77762 99.72363 46 67.75063 46.15524 89.34601 34.72333 100.77792 47 67.75063 45.48722 90.01404 33.70168 101.79958
英国国王的原始时间序列包括42位英国国王的死亡年龄。forecast.Arima()函数给出了对接下来的五位英国国王(国王43-47)的死亡年龄的预测,以及这些预测的80%和95%预测区间。第42位英国国王的死亡年龄为56岁(我们的时间序列中最后一次观察到的值),ARIMA模型给出了接下来五位国王死亡的预测年龄为67.8岁。
我们可以使用我们的ARIMA(0,1,1)模型绘制前42个国王的死亡年龄,以及预测这42个国王和接下来的5个国王的年龄:
> plot.forecast(kingstimeseriesforecasts)
与指数平滑模型的情况一样,最好研究ARIMA模型的预测误差是否正态分布为均值为零和常数方差,以及是否为连续预测误差之间的相关性。
例如,我们可以为国王死亡时的ARIMA(0,1,1)模型制作预测误差的相关图,并通过键入以下内容执行Ljung-Box测试,即滞后1-20。
> acf(kingstimeseriesforecasts$residuals, lag.max=20) > Box.test(kingstimeseriesforecasts$residuals, lag=20, type="Ljung-Box") Box-Ljung test data: kingstimeseriesforecasts$residuals X-squared = 13.5844, df = 20, p-value = 0.851
由于相关图显示滞后1-20的样本自相关都不超过显着性边界,并且Ljung-Box检验的p值为0.9,我们可以得出结论,很少有证据证明非零自相关预测错误在滞后1-20。
为了研究预测误差是否正态分布为均值为零和常数方差,我们可以制作预测误差的时间图和直方图(带有重叠的正态曲线):
> plot.ts(kingstimeseriesforecasts$residuals) # 绘制预测误差序列图 > plotForecastErrors(kingstimeseriesforecasts$residuals) # 绘制直方图
样本内预测误差的时间图表明,预测误差的方差似乎随着时间的推移大致不变(尽管时间序列的后半部分的方差可能略高)。时间序列的直方图显示预测误差大致正态分布,均值似乎接近于零。因此,预测误差通常以均值零和常数方差分布是合理的。
由于连续的预测误差似乎没有相关性,并且预测误差似乎正常分布为均值为零且方差不变,因此ARIMA(0,1,1)似乎确实为死亡年龄提供了充分的预测模型。