时间序列分析.docx

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
时间序列分析

基于时间序列分析的日本人口分析与预测摘要本文基于R语言和时间序列分析,对日本1960年至2010年的总人口数量进行了时间序列分析与预测。揭示了这一期间的日本人口符合ARIMA(1,2,2)模型,更新至最新数据后依此预测了未来10年的人口数据。关键字:时间序列,日本人口,R语言原始数据:数据来源:日本総務省統計局目录1.数据预处理1.1平稳性检验通过绘制时间序列的时序图,自相关图和偏相关图判断序列的平稳性。dat=read.csv(file.csv)ts-ts(dat,start=1960)plot(ts)acf(ts)adf.test(ts)1.通过观察时序图可知,序列有明显上升趋势2.自相关图未快速下降为零3.单位根检验,p值= 0.88790.05因此接受原假设,即序列非平稳1.2平稳化对原序列进行一阶差分进行单位根检验,p值为0. 31710.05tsdiff1-diff(ts,diff=1)plot(tsdiff1)acf(tsdiff1)adf.test(tsdiff1)一阶差分序列趋于平稳但自相关图下降依然缓慢,p值改善不明显,仍非平稳,因此继续进行二阶差分时序图基本在零均值附近震荡自相关图迅速衰减为零进行单位根检验,p值=0.026080.05因此拒绝原假设,即判断序列平稳。Tsdiff2-diff(ts,diff=2)plot(tsdiff2)adf.test(tsdiff2)1.3白噪声检验由acf图像可知,2阶自相关依然显著。Box.test(tsdiff2,type=Ljung-Box)shapiro.test(tsdiff2)Shapiro-Wilk检验说明序列是非正态的。Box-Ljung检验说明序列非纯随机,因此有充分理由认为该序列不是白噪声。2.模型识别eacf(tsdiff2)画出二阶差分序列的自相关函数图和偏自相关函数图自相关函数图中1阶显著,q取1偏自相关函数图1阶显著,p取1拓展的自相关函数图零三角的左上角处于p=0,q=1处,与acf,pacf图相矛盾,(p,q)的可能取值包括(0,1),(1,1)。模型ARIMA(0,2,1)的AIC为667.62,ARIMA(1,2,1)的AIC为669.62其中ARIMA(1,2,1)的AR系数不显著,为此选择偏差较小的模型IMA(2,1)并分别进一步检验。ml.ts; ml.ts23.模型检验3.1自相关检验残差基本是均匀分布在0值上下的,但包含一个超出临界值的异常值。残差ACF全部落在虚线内,Ljung-Box检验p值也全大于0.05。ml.ts=arima(ts,order = c(0,2,1))tsdiag(ml.ts)3.2正态检验残差的分位数-分位数图极值处有明显异常。Shapiro-Wilk正态检验统计量值为W=0.72671,p极小,为10-8量级,因此拒绝原假设,即残差非正态。qqnorm(residuals(ml.ts));qqline(residuals(ml.ts))shapiro.test(residuals(ml.ts))4.参数估计ml.ts即模型为:5.预测利用ARIMA(1,2,2)模型对未来10年的数据进行预测,得到2阶差分的未来10年数据。plot(ml.ts,n.ahead = 10)predict(ml.ts,10)将预测值与2011年至2015年的实际值进行比较,可知第一年误差仅为千分之2,随时间增长,由于2011年日本刚好人口首次出现负增长并持续至2014年,误差增长较快,但仍不超过百分之一。综合考虑认为模型预测精度还是很高的。5.1模型更新将之前预留的最近5年即2011年至2015的数据更新加入模型,并删除序列最前面的5年即1960至1964年的数据,再次进行预测。重复之前的步骤,得到新的未来10年的预测,更新后的模型预测值如上图所示。对本月,即2016年5月1日的预测为127081,与日本总务省统计局公布的预测126960相比相差了120(千人),相差约千分之一,比更新前的数据预测的精度更准确。6.异常值检验在前面的分析中,序列中含有明显的异常值,为此我们对异常值进行处理。[,1] [,2]ind 13.000000 14.000000lambda2 5.093549 -3.900442detectAO(ml.ts) [,1] [,2]ind 13.000000 14.000000lambda1 6.910984 -3.415474detectIO(ml.ts)从上面的AO,IO检验可知,序列在T=13时有一个IO ,即新息异常。T=14,有一个AO,即可加异常值。因此拟合一个在t=13时有一个IO,t=14,有一个AO的IMA模型m3=arima(ts,or

文档评论(0)

整理王 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档