R语言在时间序列中的应用要点.docx

上传人:大张伟 文档编号:11653588 上传时间:2021-08-28 格式:DOCX 页数:13 大小:84.73KB
返回 下载 相关 举报
R语言在时间序列中的应用要点.docx_第1页
第1页 / 共13页
R语言在时间序列中的应用要点.docx_第2页
第2页 / 共13页
R语言在时间序列中的应用要点.docx_第3页
第3页 / 共13页
R语言在时间序列中的应用要点.docx_第4页
第4页 / 共13页
R语言在时间序列中的应用要点.docx_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《R语言在时间序列中的应用要点.docx》由会员分享,可在线阅读,更多相关《R语言在时间序列中的应用要点.docx(13页珍藏版)》请在三一文库上搜索。

1、时间序列分析在人口预测问题中的应用摘要时间序列分析是研究动态数据的动态结构和发展变化规律的统计方法。 以 1949 年至 2004 年中国大陆人口自然增长率为例 , 用时间序列分析和统计学软件R 建立模型 , 并对人口进行预测 , 取得较好的效果。说明时间序列分析在人口预测问题上是有效的。关键词 : ARMA 模型 ; R 软件 ; 平稳性 ; 可逆性- 2 -Application of time series analysis in population predictionAbstractTime series analysis is a statistic method studyin

2、g dynamic structure of dynamic data and the law of de-velopment and change. Based on the example of population growth rate between 1949 and 2004 in the mainlandof China, mathematic models were established with time series analysis method and statistic software R,and population was predicted with it.

3、 It received a good result. Therefore the application of time series analysisis effective in population prediction.Key words: ARMA model; R software; stability; invertibility一.时间序列概述1 .概念所谓时间序列就是按照时间的顺序记录的一列有序数据。对时间序列进行观 察、研究,找寻它变化发展的规律,预测它将来的走势就是时间序列分析时间序 列分析有着非常广泛的应用领域。2 .定义在统计研究中,常用按时间序列排列的一组随机变量

4、Xi,X2, ,Xt,来表示一个随机事件的时间序列,简记为XWT或Xt。3 .主要分析方法时间序列分析方法主要有描述性时序分析和统计时序分析。描述性时序分析主要通过直观数据比较或绘图测绘,统计时序分析主要有频域分 析方法以及时域分析方法。常用的是时域分析法,时域分析法的基本思想是源于 事件的发展通常具有一定的惯性,这种惯性用统计语言来描述就是序列值之间存 在一定的相关关系,而这种关系具有某种统计规律。我们分析的重点就是找寻这 种规律,选取合适的数学模型拟合,进而预测该事件发展走向。4 .研究意义事件序列分析具有现实意义,在金融经济、气象水文、信号处理、机械振动 等众多领域具有广泛的应用。二.时

5、间序列的预处理通常得到一个观察值序列后首先要对其进行平稳性以及纯随机性进行检验。根据检验结果的不同我们有不同的处理方法1 .平稳性时间序列的平稳性分为严平稳与宽平稳(1)严平稳定义设XJ一时间序列。对任意整数 m,任取匕,,tmT ,对任意整数工, 有Fti,t2tm(%X2,Xm)=Ft2十tm媪&X2,Xm),则称序列Xt为严稳序列。其中F为分布函数。(2)宽平稳定义如果XJ满足:任取twT,有EX:g;任取twT ,有EXt = N , N为常数;任取 t,s,kwT ,且 k+tswT ,有尸(t,s)=Rk,k + st);则称Xt为宽平稳序列。其中 外t,s)表示Xt与Xs的自相关

6、系数。(3)平稳性的检验平稳性检验主要有时序图检验以及自相关图检验。2 .纯随机性(1)纯随机性定义如果时间序列Xt满足以下性质:任取twT,有EXt=N, R为常数;任取t,swT ,有qt手s则称序列为纯随机序列,也称为白噪声 (white noise)序歹!J。(2)纯随机性检验构造检验统计量,主要是 Q统计量以及LB统计量。三.时间序列分析的主要方法及模型1.平稳时间序列分析的模型(1) AR 模型(auto regression modj具有如下结构的模型称为p阶自回归模型,记为AR(p):X =%例*十十GpXyJp#02E(气)=0,Var(舞)=。2, Edt%)=0,s*t、

7、EXst=0,Vst(2) MA 模型(moving average)具有如下结构的模型称为q阶移动平均模型,记为MA(q):xt = N + 5一& 觐 4 - 62 5 _2 一8q 备 _q% =0一,、 一一 ,、2一, 、 一旦 St) =0,Var(.)=仃 E(量为)=0,s*t(3)ARMA 模型(auto regression moving average)具有如下结构的模型称为自回归移动平均模型,记为ARMA(p,q):X =亳+X+dpXt_p +到一日声t_1一”5%#0,% #0一,、 一一 ,、2-,、 一E(露)=0,Var(露)=%, ER%) =0,s,tEx

8、s5=0,Vs t若 =0 ,该模型称为中心化 ARMA(p,q)模型 2.非平稳序列分析事实上在自然界中绝大部分序列都是非平稳的,因而对非平稳序列的分析更 普遍更重要。对非平稳时间序列的分析法通常分为确定性时序分析和随机时序分析。这里 简要介绍常用确定性时序分析方法。(1)趋势分析有些时间序列具有非常显著的趋势,我们分析的目的就是要找到序列中的这 种趋势,并利用这种趋势对序列对序列的发展做出合理的预测。(2)季节效应分析在日常生活中我们可以看到许多有季节效应的时间序列,如四季气温等等。凡是呈现出固定的周期性变化的时间,我们都称具有季节效应。综合分析既有趋势起伏变动又有季节效应的复杂序列的分析

9、方法,常用模型有:加法模型X =1 St It乘积模型混合模型a.xt =1 St Itb.xt =T (St It)式中,Tt代表序列的长期趋势波动;St代表序列的季节性(周期性)变化;It代表随机波动。3.非平稳序列的模型事实上,许多非平稳序列差分后会显示出平稳序列的性质,称之为差分平稳 序列。对差分平稳序列可以用 ARIMA模型拟合。具有如下结构的模型称为求和自回归移动平均(autoregressive integrated movingaverage膜型,简记为 ARIMA(p,d,q)模型:6(B)Vdxt =O(B)%2 E( ;t) =0,Var( t)=二;,E( t s) =

10、0,s = tE(Xs)=0,Vs1称为残差自回归模型。四.实例本文以中国大陆人口自然增长率(19492004年)为样本进行分析,数据(数 据来自2005年统计年鉴)见表1。表1中国大陆人口自然增长率年份人口自然增长率1940161950192020232420.3220.523.2317.2410.191960-4.743.7826.9933.3327.6428.3826.2225.5327.3826.08197025.8323.3322.1620.8917.4815.6912.6612.061211.61198011.8714.5515.6813.2913.0814.2615.5716.6

11、115.7315.04199014.3912.9811.611.4511.2110.510.4210.069.148.1820007.586.956.456.015.87第一步:原数据的平稳性检验为判断一个序列是否平稳,我们主要通过时序图以及自相关图进行检验。因为用到ARIMA模型的拟合和检验,所以在程序的开头会载入tseries首先绘出时序图、自相关图、偏自相关图(如下):- 13 -V1Series pr图1原数据的时序图、自相关图、偏自相关图通过观察时序图,序列有递减趋势,所以我们基本可以判断该序列非平稳 第二步:差分并检验新序列的平稳性,完成序列的定阶TimeSeries e图2 1阶

12、差分后的时序图、自相关图、偏自相关图为了增加说服力,我们再次使用单位根检验对1阶差分后的的序列进行验证。结 果如下:Augmented Dickey-Fuller Testdata: dDickey-Fuller = -4.8992, Lag order = 3, p-value = 0.01alternative hypothesis: stationaryWarning message:In adf.test(d) : p-value smaller than printed p-value从上可以看出,p值等于0.01,远远小于0.05,因此拒绝原假设。所以可以认定1阶差分后的序列基本平

13、稳,模型定阶结束。第三步:拟合模型并通过AIC准则检验在ARIMA模型拟合过程中中,模型为一阶差分,p和q分别取0到3并依次验证,取AIC值最小者。PQAIC01308.8902309.6203303.7910319.7111310.512304.9613305.3120305.8721307.6722305.5723307.1430307.8331308.8532307.4133309.12从上面的表格可以看出,当p取0, q取3的时候,AIC函数的值最小。因 此,模型初步定为ARIMA (0,1,3)。第四步:残差检验图3残差的时序图Box-Pierce testdata: rX-squa

14、red = 0.0017, df = 1, p-value = 0.9673由于p值远大于0.05,则该序列为白燥声,故模型最终定为ARIMA (0,1,3)第五步:画出qq图Normal Q-Q Plot-2-101Theoretical Quantiles2O1 5 0 5- O1- sotnauQ ppmas从qq图的效果可以看出,二者还是比较吻合的,但是右侧头部和左侧尾部 偏离期望的正态分布。第六步:预测并比较结果如下:$predTime Series:Start = 57End = 58Frequency = 11 6.646174 7.601378$seTime Series:St

15、art = 57End = 58Frequency = 11 3.521358 6.133766因此我的未来2年预测结果分别是6.646174, 7.601378,原论文的预测结果为:年份20032004实际值6.015.87预测值6.166265.8761两个预测结果进行比较,略有差距,其中的原因可能是拟合的问题,也可能 是软件的差异。参考文献1王燕 应用时间序列分析.北京:中国人民大学出版社,20052何书元 应用时间序列分析.北京:北京大学出版社,20033 Paul Teetor R语言经典实例.北京:机械工业出版社,2013完整的程序如下:library(tseries)pr-read.table(D:1.txt)par(mfrow=c(2,2);plot.ts(pr);acf(pr);pacf(pr)d=diff(ts(pr)par(mfrow=c(2,2);plot.ts(d);acf(d);pacf(d)adf.test(d)nihe=arima(pr,order=c(0,1,1),method=ML)niher=nihe$residualsplot.ts(r)Box.test(r)qqnorm(r)qqline(r)pr.fore = predict(arima(pr, order = c(0,1,3), n.ahead =2)pr.fore

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1