-
模型:即不平稳序列进行差分后,在建立
ARM
A
模型。
例:对我国
2000-2007
年社会消费品零售总额进行建模和预报。
< br>
(
1
)先做出时序图:
data
ex;
input
x @@;y=dif12(x);
p>
t=intnx(
'month'
,
'01jan2000'd
,_n_-
1
p>
);
format
t
monyy.
;
cards
;
2962.9
2804.9 2626.6 2571.5 2636.9 2645.2 2596.9 2636.3
3136.9 3347.3 3107.8 3680.0 3332.8
3047.1 2876.1 2820.9
2929.6 2908.7
2851.4 2889.4 2854.3 3029.3 3421.7 4033.3
3324.4 3596.1 3114.8 3052.2 3202.1
3158.8 3096.6 3143.7
3422.4 3661.9
3733.1 4404.4 3907.4 3706.4 3494.8 3406.9
3463.3 3576.9 3562.1 3609.6 3971.8
4204.4 4202.7 4735.7
4569.4 4211.4
4049.8 4001.8 4166.1 4250.7 4209.2 4262.7
4717.7 4983.2 4965.6 5562.5 5300.9
5012.2 4799.1 4663.3
4899.2 4935.0
4934.9 5040.8 5495.2 5846.6 5909.0 6850.4
6641.6 6001.9 5796.7 5774.6 6175.6
6057.8 6012.2 6077.4
6553.6 6997.7
6821.7 7499.2 7488.3 7013.7 6685.8 6672.5
7157.5 7026.0 6998.2 7116.6 7668.4
8263.0 8104.7 9015.3
;
proc
gplot
;
plot
x*t;
symbol
v
=dot;
run
;
p>
i
=jion
(
2
)观察时序图,易知该序列具有显著的趋势性和季节性,显
然是非平稳序列。
为了进一步确定其非平稳性,作出该序列的自相关图:
自相关图表现出非常缓慢的衰减,表明我国
< br>200-2007
年社会消费品零售额是不平稳的。
<
/p>
(
3
)为消除序列的季节性和趋势性,我
们进行一阶
12
步差分。
data
ex;
input
x
@@;dif1=dif(x);dif1_12=dif12(dif1);
t=i
ntnx(
'month'
,
'01j
an2000'd
,_n_-
1
);<
/p>
format
t
monyy.
;
cards
;;
proc
gplot
;
plot
dif1_12*t;
symbol
i
=jion
v
=dot;
proc
arima
;
identify
var
=x(
1
12
)
nlag
=
12
;
run
;
观察
?<
/p>
??
12
X
t<
/p>
?
序列的时序图可知差分运算后的序列基本平稳,利用
SAS
绘制
?
??
12
X
t
?
序
列的自相关函数图和偏自相关函数图均是拖尾的,
因此我们对
?
??
12
X
t
?
建立
ARMA(p,q)
模
型。
(
4
)模型的建立:
< br>
data
ex;
input
x
@@;dif1=dif(x);dif1_12=dif12(dif1);
t=i
ntnx(
'month'
,
'01j
an2000'd
,_n_-
1
);<
/p>
format
t
monyy.
;
cards
;
;
proc
gplot
;
plot
dif1_12*t;
symbol
i
=jion
v
=dot;
proc
arima
;
identify
var
=x(
1
12
)
nlag
=
12
minic
p
=(
0
:
5
)
q
=(
0
:
5
);
run
;
得到模型的
BIC
值,从图中可以看出,
p=4
q=2
时,
BIC(4,2
)=9.776787
最小,因此选择
ARMA(4,2)
p>
。
(
5
)对模型
ARMA(4,2)
进行参数估计和显
著性检验。利用程序:
data
ex;
input
x
@@;dif1=dif(x);dif1_12=dif12(dif1);
t=i
ntnx(
'month'
,
'01j
an2000'd
,_n_-
1
);<
/p>
format
t
monyy.
;
cards
;;
proc
gplot
;
plot
dif1_12*t;
symbol
i
=jion
v
=dot;
proc
arima
;
identify
var
=x(
1
12
)
nlag
=
12
;
estimate
p
=
4
q
=
2
method
=cls;
run
;
可以看出,
其中有的参数没有通过检
验,
MA1,2
AR1,2
AR1,3
的
p
值远远大于
0.05
,
所以,
应将
p
调整为
p=(1,4)
q=1
,利用程序,进行检验:
data
ex;
input
x
@@;dif1=dif(x);dif1_12=dif12(dif1);
t=i
ntnx(
'month'
,
'01j
an2000'd
,_n_-
1
);<
/p>
format
t
monyy.
;
cards
;;
proc
gpl
ot
;
plot
dif1_12*t;
symbol
i
=jion
v
=dot;
proc
arima
;
identify
var
=x(
1
12
)
nlag
=
12
;
estimate
p
=(
1
,
4
< br>)
q
=
1
p>
method
=cls;
run
;
可以看出,
仍然有些参数没有通过检验
AR1,2
的
p>
p
值远远大于
0.05
< br>接着进行调整,
将
p
调整为
p>
p=1,
将
q
调整
为
q=1
,利用程序,接着进行参数检验:
data
ex;
input
x
@@;dif1=dif(x);dif1_12=dif12(dif1);
t=i
ntnx(
'month'
,
'01j
an2000'd
,_n_-
1
);<
/p>
format
t
monyy.
;
cards
;;
proc
gpl
ot
;
plot
dif1_12*t;
symbol
i
=jion
v
=dot;
proc
arima
;
identify
var
=x(
1
12
)
nlag
=
12
;
estimate
p
=
1
q
=
1
method
=cls;
run
;
由图中可以看出,所有的参数都通过了检验,记
Y
t
?
??
12
X
t
,则该模型为表达式为:
Y
t
?
0
.43825
Y
t
?
< br>1
?
?
t
?
0.88638
?
t
?
1
(
< br>6
)对模型
Y
t
?
0.43825
Y
t
?
1
?
?
t
?
0.88638
?<
/p>
t
?
1
进行参差
检验:
(仍时有上个程序得到的结
果)
可以看出,残差序列是白噪声序列,所以模型是适应的。
p>
(
7
)进行预测:
data
ex;
input
x
@@;dif1=dif(x);dif1_12=dif12(dif1);
t=i
ntnx(
'month'
,
'01j
an2000'd
,_n_-
1
);<
/p>
format
t
monyy.
;
cards
;;
proc
ari
ma
;
identify
var
=x(
1
12
)
nlag
=
12
minic
p
=(
0
5
)
q
=(
0
5
);
estimate
p
=
1
q
=
1
method
=cls;
forecast
lead
=
5
id
=t
out
=results;
proc
gplot
data
=results;
plot
x*t=
1
forecast*t=
2
l95*t=
3
/
overlay
;
symbol1
c
=blue
i
=jion
v
=star;
symbol2
c
=red
i
=jion
v
=none
l
=
1
w
=
1
;
symbol3
c
=green
i
=jion
v
=none
l
=
2
p>
w
=
2
;
ru
由以上两图中,可以看出,模型建立的比
较成功,提取信息比较充分。
23.
交互函数分析和传递模型:
<
/p>
销售量
Yt
和先导经济函数
Xt
如下表,建立传递模型对销售量
{Yt}
进行分析预测。
(
1
)根据以下程序:
data
ex;
input
x y @@;t=_n_;
cards
;;
proc
arima
;
identify
var
=y(
1
)
crosscor=(x(
1
))
n
lag
=
10
;
run
;
从图中可以看出,
p>
?
X
t
对
?
Y
t
的影响滞后两期
。
(
2
)识
别
Xt
和
Yt
的适应性模型,并对他们预白噪声化。
NO1:
做出
Xt
的自相关函数,并进行白噪声检验。
data
ex;
input
x y @@;t=_n_;
cards
;;
proc
arima
;
identify
var
=x;
run
;
可见
Xt
不平稳,我们对其进行一阶差分,令
Z
t
(
x
)
?<
/p>
X
t
?
X
t
?
1
,得到
Z
t
(
x
)
的自相关函数和白
噪声检验。
< br>
data ex;input x y
@@;z_x=dif(x);t=_n_;
cards;;proc
arima;identify var=z_x;run;
-
-
-
-
-
-
-
-
-
上一篇:拳皇97所有人的鬼步
下一篇:科研经费分配明细表