时间序列习题47.docx
《时间序列习题47.docx》由会员分享,可在线阅读,更多相关《时间序列习题47.docx(16页珍藏版)》请在冰豆网上搜索。
时间序列习题47
袁宏宇
09统计2班
25号
习题4.7
(1)该序列的时序图如下图一所示:
图一平均每头奶牛月度产奶量的时序图
从该时序图中可以看出月度产奶量以月为固定周期的季节波动和长期线性递增趋势同时作用于该序列,因此可以尝试使用混合模型
来拟合该序列的发展。
(2)由
(1)的分析可知,(2.1)我们先根据季节指数的公式:
通过Excel软件计算出该序列的季节指数
月份
季节指数
月份
季节指数
1
0.960722
7
1.042920
2
0.912575
8
0.984162
3
1.038169
9
0.930947
4
1.064301
10
0.938549
5
1.153627
11
0.902281
6
1.116566
12
0.955179
表一月度季节指数表
绘制季节指数图如下图二所示:
图二平均每头奶牛月度产奶量的季节指数图
从季节指数图中可以看出,每年第二季度是该地区奶牛的产奶旺季,每年的第三季度是该地区奶牛的产奶淡季,第一和第四季度的产奶状况起伏不大,季节效应相对第二和第三季度没那么明显。
(2.2)消除季节影响后拟合该序列的趋势
变动规律,对混合模型
作简单的变换
,基本上消耗了季节性因素对原序列的影响,然后用一元回归线性模型进行趋势拟合。
从SAS结果可以看出,模型通过了显著性检验,拟合精度
也比较高,回归模型的常数项和回归系数都通过了显著性检验,线性趋势拟合图如图三所示:
图三线性趋势拟合图
得到的线性趋势模型为:
(2.3)残差检验,对混合模型作变换:
,通过SAS软件编程求解可得,残差图如图四所示:
图四残差图
残差图显示残差序列仍然存在一定的相关性,但已呈现出明显的随机波动,说明确定性分析方法对于信息提取的充分性常常不能达到完美,但也能较充分的把原序列中蕴含的相关信息提取出来。
(2.4)使用拟合模型对序列进行短期预测,第
期的预测值为:
根据预测模型和历史数据,通过SAS软件编程求解,再通过Excel作个简单的计算,可得到1971年该地区奶牛的月度预测产量如表二所示:
表二1971年该地区奶牛的月度产量
预测期数
T
S
x
1
799.79
0.960722
768.3758
2
801.592
0.912575
731.5128
3
803.395
1.038169
834.0598
4
805.197
1.064301
856.972
5
807
1.153627
930.977
6
808.802
1.116566
903.0808
7
810.605
1.042920
845.3962
8
812.407
0.984162
799.5401
9
814.21
0.930947
757.9864
10
816.012
0.938549
765.8672
11
817.814
0.902281
737.898
12
819.617
0.955179
782.8809
将该地区1962—1970年平均每头奶牛的月度产奶量的观察值和1962—1971年平均每头奶牛的月度产奶量的估计值序列联合作图,如图五所示:
图五拟合效果图
______________________________________________________________________________________________________________________________________________________________
以下为例4.7的几幅绘图
图4—6中国社会消费品零售总额时序图
图4—7中国社会消费品零售总额序列季节指数图
图4—8、9消除季节影响后的社会商品零售总额序列散点图与线性趋势拟合图
图4—10残差图
图4—11拟合效果图
______________________________________________________________________________________________________________________________________________________________
(3)对某地区1962—1970年平均每头奶牛的月度产奶量(单位:
磅)序列使用X—11方法进行季节调整。
由于没有交易日的影响,考虑使用乘法模型:
,使用X—11过程得到平均季节指数如下表三所示:
月份
季节指数
月份
季节指数
1
0.960722
7
1.042920
2
0.912575
8
0.984162
3
1.038169
9
0.930947
4
1.064301
10
0.938549
5
1.153627
11
0.902281
6
1.116566
12
0.955179
表三月度季节指数表
图六X—11过程获得的平均季节指数图
鉴于上图为每一年份所有月的季节指数图,因此有锯型波动的效果,但只取其中一个年的每个月份来看,和图二对比,可以发现两个季节指数的图形还是很相似的,由于在有趋势时使用因素分解方法对季节指数的估计通常是有偏的,在季节效应存在时使用X—11过程的多次移动平均和迭代法能有效地提高对季节指数及趋势拟合的精度。
消除季节趋势,得到的调整后序列图如图七所示:
图七季节调整后的序列图
可以看出该地区平均每头奶牛的月度产奶量剔除季节效应之后有非常显著的波动递增趋势,和之前所得的结论一致,使用移动平均的方法拟合序列的趋势,所得的趋势拟合图如下图八所示:
图八季节调整后的趋势拟合图
从季节调整后序列中消除趋势项,得到随机波动项,如下图九所示:
图九随机波动项的时序图
对照残差图图四,可以直观看出X—11过程得到的残差序列(图九)比简单的因素分解方法得到的残差序列更不规则,这说明X—11过程对季节效应和趋势信息的提取更加充分。
图十预测效果图与实际观察值图的叠加
______________________________________________________________________________________________________________________________________________________________
SAS程序
dataout1;
inputmilk@@;
time=intnx('month','1jan1962'd,_n_-1);
formattimeyymmdd4.;
cards;
589561640656727697640599568577553582
600566653673742716660617583587565598
628618688705770736678639604611594634
658622709722782756702653615621602635
677635736755811798735697661667645688
713667762784837817767722681687660698
717696775796858826783740701706677711
734690785805871845801764725723690734
750707807824886859819783740747711751
............
/*若要画拟合效果图必须修改数据集Out2,补多9行季节指数,使得季节变量和预测值的数量对应才能画图,奶牛产量的最后一行打点是为了原始观察值的维数与季节指数还有预测值的数量相同才能叠加起来*/
;
procgplotdata=out1;
plotmilk*time;
symbolc=redi=joinv=star;
run;
dataout2;
inputseason@@;
month=_n_;
cards;
0.9607220.9125751.0381691.0643011.1536271.116566
1.0429200.9841620.9309470.9385490.9022810.955179
;
procgplotdata=out2;
plotseason*month;
symboli=splinev=starh=1cv=redci=green;
run;
dataout3;
inputy@@;
t=_n_;
cards;
613.080579614.7439936616.4699582616.3669864630.1863601624.2353788613.6616423608.6396345610.1314038614.7787702612.891106609.309878
624.5303012620.2229954628.9920042632.3399114643.1888297641.2518382632.8385686626.9293064626.2440289625.4335149626.1907322626.0606651
653.6750486677.2046133662.705205662.4065936667.4601063659.1639007650.0978023649.2833497648.8017041651.0049022658.3314954663.7499359
684.9015636681.5878147682.9331255678.3795186677.8620819677.0759633673.1101139663.50865660.6176291661.659647667.1979128664.7968601
704.6783565695.8332192708.9404519709.3857847703.0001898714.6912946704.7520423708.2167367710.0296795710.6714727714.8549066720.2838421
742.1501746730.8988302733.9845439736.6337155725.5378038731.707754735.4351245733.6190587731.5131796731.9809621731.4794393730.753084
746.3137099762.6770402746.50659747.9087213743.7412613739.7681821750.7766655751.9087305752.9966797752.2249771750.3205764744.3630984
764.0087351756.1022382756.1389331756.3649757755.0100682756.7846415768.0358992776.2949596778.7768799770.3380431764.7285048768.4423548
780.6628765774.730844777.3300879774.2170683768.0125378769.3230852785.2951329795.6007243794.889505795.9094304788.0028506786.240066
............
;
procregdata=out3;
modely=t/stbclb;
ploty*t;
outputout=outp=yy;
run;
procprintdata=out;
run;
procgplotdata=out;
ploty*t=1yy*t=2/overlay;
symbol1i=splinev=starh=1ci=redcv=green;
symbol2i=splinev=starh=1ci=greencv=blue;
run;
dataout4;
setout;
r=y-yy;
procprint;
run;
procgplotdata=out4;
plotr*t;
symboli=nonev=starh=1ci=greencv=red;
run;
dataout5;
setout;
keepyy;
setout3;
keepy;
setout1;
keepmilktime;
setout2;
keepseason;
yy=yy*season;
procgplotdata=out5;
plotmilk*time=1yy*time=2/overlay;
symbol1i=nonev=starh=1ci=redcv=green;
symbol2i=splinev=noneh=1ci=redcv=blue;
run;
以下为X—11过程的SAS程序:
dataaa;
inputx@@;
t=intnx('quarter','1jan1962'd,_n_-1);
formattyymmdd4.;
cards;
589561640656727697640599568577553582
600566653673742716660617583587565598
628618688705770736678639604611594634
658622709722782756702653615621602635
677635736755811798735697661667645688
713667762784837817767722681687660698
717696775796858826783740701706677711
734690785805871845801764725723690734
750707807824886859819783740747711751
;
procx11data=aa;
quarterlydate=t;
varx;
outputout=outb1=xd10=seasond11=adjustedd12=trendd13=irr;
dataout;
setout;
estimate=trend*season/100;
procgplotdata=out;
plotseason*t=2adjusted*t=2trend*t=2irr*t=2;
plotx*t=1estimate*t=2/overlay;
symbol1i=splinev=starh=1cv=blueci=red;
symbol2i=splinev=starh=1cv=redci=green;
run;