(2) Matlab程序代码 clear all;
t=linspace(1,59,59);
z=[118.5 106.1 112.1 109.3 98.1 56.4 48.1 54.5 50.9 93.9 46.9 58.8 24.6 59.7 31.7 41.6 70 58.4 113.4 32.3 84.4 35.9 89.2 69.5 45.4 49.6 17.8 81.2 18.2 0.5 -53.9 -36.1 45.7 34.2 33.4 74.1 69.5 71.8 81.2 9 37.8 38.5 101.4 77.7 100.6 43.8 92.1 22.1 14.3 65.1 58.9 57.2 133.9 69.6 97.9 65.5 129.7 107.9 64.7];
plot(t,z); plot(t,y); xlabel('时间t');
ylabel('差分后的序列z');
title('差分后数据对应的序列图');
(3) 得到图(4)
图(4)
(4)观察图形,发现数据存在上下波动。表示序列是平稳的。
法二:利用样本自相关函数进行检验
(1)用matlab做出原数据自相关函数的图 (2)Matlab程序代码 clear all;
t=linspace(1,59,59);
z=[118.5 106.1 112.1 109.3 98.1 56.4 48.1 54.5 50.9 93.9 46.9 58.8 24.6 59.7 31.7 41.6 70 58.4 113.4 32.3 84.4 35.9 89.2 69.5 45.4 49.6 17.8 81.2 18.2 0.5 -53.9 -36.1 45.7 34.2 33.4 74.1 69.5 71.8 81.2 9 37.8 38.5 101.4 77.7 100.6 43.8 92.1 22.1 14.3 65.1 58.9 57.2 133.9 69.6 97.9 65.5 129.7 107.9 64.7];
autocorr(z);
[a,b]=autocorr(z); xlabel('k'); (3)得到图(5)
图(5)
(4) 观察图形发现,当k增大时,自相关函数迅速衰减至蓝线内,所以
序列是平稳的。
法三:
利用单位根检验进行判断:
(1)用matlab求出原始数据的单位根 (2)Matlab程序代码clear all; clear all;
t=linspace(1,59,59);
z=[118.5 106.1 112.1 109.3 98.1 56.4 48.1 54.5 50.9 93.9 46.9 58.8 24.6 59.7 31.7 41.6 70 58.4 113.4
32.3 84.4 35.9 89.2 69.5 45.4 49.6 17.8 81.2 18.2 0.5 -53.9 -36.1 45.7 34.2 33.4 74.1 69.5 71.8 81.2 9 37.8 38.5 101.4 77.7 100.6 43.8 92.1 22.1 14.3 65.1 58.9 57.2 133.9 69.6 97.9 65.5 129.7 107.9 64.7];
[h,pValue]=adftest(z,'model','ar','Lags',0:2);
图(6)
结果分析:根据h的值可以知道,检验表明时间序列不存在单位根,原序列平稳。
数据平稳性综合分析:
该序列用三种方法得到结果相同,所以认为原序列平稳。
4、零均值化
程序编译: clear all;
z=[118.5 106.1 112.1 109.3 98.1 56.4 48.1 54.5 50.9 93.9 46.9 58.8 24.6 59.7 31.7 41.6 70 58.4 113.4 32.3 84.4 35.9 89.2 69.5 45.4 49.6 17.8 81.2 18.2 0.5 -53.9 -36.1 45.7 34.2 33.4 74.1 69.5 71.8 81.2 9 37.8 38.5 101.4 77.7 100.6 43.8 92.1 22.1 14.3 65.1 58.9 57.2 133.9 69.6 97.9 65.5 129.7 107.9 64.7];
ave=mean(z); for i=1:59
z(1,i)=z(1,i)-ave;
end
得到:
57.7441 45.3441 51.3441 48.5441 37.3441 -4.3559 -12.6559 -6.2559 -9.8559 33.1441 -13.8559 -1.9559 -36.1559 -1.0559 -29.0559 -19.1559 9.2441 -2.3559 52.6441 -28.4559 23.6441 -24.8559 28.4441 8.7441 -15.3559 -11.1559 -42.9559 20.4441 -42.5559 -60.2559 -114.6559 -96.8559 -15.0559 -26.5559 -27.3559 13.3441 8.7441 11.0441 20.4441 -51.7559 -22.9559 -22.2559 40.6441 16.9441 39.8441 -16.9559 31.3441 -38.6559 -46.4559 4.3441 -1.8559 -3.5559 73.1441 8.8441 37.1441 4.7441 68.9441 47.1441 3.9441 共59个数据。
四、模型建立及预测
Box-Jenkins方法建模
一、模型类型识别
(1)由平稳时间序列自相关和偏自相关函数的统计特性来初步确定时间序列模型的类型
(2)Matlab程序代码
z=[118.5 106.1 112.1 109.3 98.1 56.4 48.1 54.5 50.9 93.9 46.9 58.8 24.6 59.7 31.7 41.6 70 58.4 113.4 32.3 84.4 35.9 89.2 69.5 45.4 49.6 17.8 81.2 18.2 0.5 -53.9 -36.1 45.7 34.2 33.4 74.1 69.5 71.8 81.2 9 37.8 38.5 101.4 77.7 100.6 43.8 92.1 22.1 14.3 65.1 58.9 57.2 133.9 69.6 97.9 65.5 129.7 107.9 64.7]; ave=mean(z); for i=1:59
z(1,i)=z(1,i)-ave;
endsubplot(1,2,1), autocorr(z); [a,b]=autocorr(z);
title('差分序列的自相关函数图'); subplot(1,2,2), parcorr(z); [c,d]=parcorr(z);
title('差分序列的偏自相关函数图');、
结果:
差分序列的自相关函数图1差分序列的偏自相关函数图10.8Sample Partial Autocorrelations0.80.6Sample Autocorrelation0.60.40.20-0.2-0.4-0.60.40.20-0.2-0.40510Lag15200510Lag1520
由图,初步判定差分后的序列适合MA(3)模型。
二、定阶
残差方差图定阶法
使用EViews工具,结果如下 (1)
Dependent Variable: AO Method: Least Squares Date: 11/29/14 Time: 12:13 Sample (adjusted): 1983Q1 1997Q3 Included observations: 59 after adjustments Convergence achieved after 33 iterations MA Backcast: 1982Q4
MA(1)
R-squared
Coefficient
0.253309
Std. Error
0.126592
t-Statistic
2.000983
Prob.
0.0501
0.022542 37.28685 9.984117 10.01933 9.997863
0.102233 Mean dependent var 0.102233 S.D. dependent var 35.32950 Akaike info criterion 72394.05 Schwarz criterion -293.5315 Hannan-Quinn criter. 1.781594
Adjusted R-squared S.E. of regression Sum squared resid Log likelihood Durbin-Watson stat