您的位置:首页 > 其它

非平稳时间序列综合分析

2017-06-25 20:14 281 查看
之前我们介绍了单纯的趋势分析方法与单纯和单纯的季节效应分析方法,在这一节我们介绍既有趋势起伏又有季节效应的复杂序列的分析方法。

要对趋势起伏变动和季节效应同时进行分析,首先必须了解它们之间的相互作用关系。但是,通常我们并不知道它们到底是怎样综合作用而影响序列的变化,这时只能根据序列的表现,选择一些经验模型来估计各因素间的相互作用关系。常用的模型的有:

1.加法模型

2.乘法模型

在确定性因素很强劲时,选择合适的确定性模型通常会得到非常不错的分析预测效果。

R语言中进行确定性因素分解的函数是decompose,该函数的命令格式如下:

decompose(x,type = )

-x:序列命。

-type:指定是加法模型还是乘法模型

(1)加法模型 type = “additive”,这是系统默认设置

(2)乘法模型 type = “multiplicative”

对1993-2000年中国社会消费品零售总额序列进行确定性因素分解。

#读入序列,并绘制时序图
c<-read.table("D:/R-TT/book4/4R/data/file14.csv",sep=",",header = T)
x<-ts(c$sales,start = c(1993,1),frequency = 12)
plot(x)




中国社会消费品零售总额序列时序图

#确定性因素分解
x.fit<-decompose(x,type="mult")
#查看季节指数,并绘制季节指数图
x.fit$figure
plot(x.fit$figure,type = "o")




季节指数图

#查看趋势拟合值,并绘制趋势拟合图
x.fit$trend
Jan      Feb      Mar      Apr      May      Jun      Jul      Aug      Sep      Oct      Nov      Dec
1993       NA       NA       NA       NA       NA       NA 1028.696 1048.900 1069.542 1088.471 1108.496 1130.450
1994 1153.913 1179.492 1208.621 1240.533 1275.733 1316.087 1354.700 1385.483 1414.425 1445.429 1476.679 1507.108
1995 1537.554 1567.687 1597.308 1627.879 1659.350 1694.296 1726.138 1756.412 1787.517 1813.887 1839.679 1866.312
1996 1890.954 1913.637 1938.921 1966.329 1994.879 2028.796 2063.733 2092.137 2116.017 2137.537 2156.521 2173.546
1997 2190.733 2207.475 2221.812 2236.637 2251.825 2260.071 2272.325 2287.071 2297.142 2309.683 2322.567 2335.829
1998 2350.200 2366.608 2383.846 2400.158 2416.213 2434.837 2449.933 2464.292 2479.100 2488.579 2497.033 2505.433
1999 2513.642 2521.579 2532.308 2547.687 2561.737 2578.554 2594.675 2610.475 2630.912 2649.208 2669.550 2689.933
2000 2707.971 2726.379 2746.162 2768.446 2793.929 2818.963       NA       NA       NA       NA       NA       NA
plot(x.fit$trend)




趋势图

#查看随机波动(残差)值,并绘制残差图
x.fit$random
Jan       Feb       Mar       Apr       May       Jun       Jul       Aug       Sep       Oct       Nov
1993        NA        NA        NA        NA        NA        NA 1.0088882 0.9880930 0.9748693 0.9584809 0.9492950
1994 0.9897286 0.9917699 1.0069996 1.0039379 1.0079296 1.0151591 0.9947887 1.0022841 1.0057935 0.9916461 1.0047607
1995 0.9982198 0.9571982 1.0006930 1.0123394 1.0122310 1.0092784 1.0128538 1.0064677 1.0009573 0.9948091 1.0044711
1996 0.9671360 1.0048115 1.0000891 1.0037414 1.0081543 1.0106040 0.9854906 0.9891157 1.0032647 0.9975563 1.0140385
1997 1.0006939 1.0088390 0.9998115 0.9993280 0.9918727 0.9988758 0.9963425 0.9935731 0.9933992 1.0090249 1.0092977
1998 1.0391783 0.9804972 0.9969239 0.9987216 0.9932308 0.9962666 1.0048103 1.0142266 1.0041262 1.0114724 1.0142280
1999 1.0145206 1.0128044 0.9892766 0.9843682 0.9776685 0.9823163 0.9878519 0.9972656 1.0086157 1.0280362 0.9949349
2000 0.9815488 1.0351058 0.9972322 0.9885893 0.9999390 0.9785257        NA        NA        NA        NA        NA
Dec
1993 0.9863775
1994 1.0099323
1995 1.0085729
1996 1.0323984
1997 0.9718346
1998 0.9845558
1999 0.9973544
2000        NA
plot(x.fit$random)




随机波动残差值

可以让R显示提供信息集成显示和图形集成输出

#命令集合
x.fit
plot(x.fit)




因素分解拟合综合输出
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: