如何快速的做ARIMA时间序列分析
Posted 小罗说统计
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何快速的做ARIMA时间序列分析相关的知识,希望对你有一定的参考价值。
硕士毕业,小罗在基层疾控参加了工作,十分深切的感受到了基层疾控的业务繁忙;同时也感到略微的伤感,因为小罗深爱的数据分析在这里并不能派上用场。但数据分析、编程、数学已经深入了小罗的骨髓,一天不学,一天不做,心里憋得慌。所以工作之余,小罗仍在坚持学习,坚持与大家分享与R和数据分析相关的东西。
废话不多说了,今天小罗用R语言中强大的shiny包为大家写了一个快速做ARIMA时间序列分析的小软件。这个软件是基于网页技术(html, css, javascript)和R内核的。目的是帮助刚学习了ARIMA的理论知识,但是又不太会R编程的同学,快速上手R,完成ARIMA时间序列分析。
什么是ARIMA?
ARIMA模型全称为自回归积分滑动平均模型(Autoregressive Integrated Moving Average Model,简记ARIMA),是由博克思(Box)和詹金斯(Jenkins)于70年代初提出一著名时间序列(Time-series Approach)预测方法。其表达形式为ARIMA(p,d,q)。
如果大家要深入了解ARIMA的理论部分,小罗推荐一本书:
JonathanD.Cryer, Kung-SikChan. 时间序列分析及应用:R语言[M]. 机械工业出版社, 2011.
什么是Shiny?
shiny是RStudio公司开发的R语言软件包,用来快速开发交互式的小程序。若大家想入门shiny,小罗推荐一个网站:
http://yanping.me/shiny-tutorial/
平台概况
下面,小罗为大家展示一下平台界面:
界面主要分为左边和右边两部分,左边从用户上传自己的CSV格式数据开始,下面是指定显示用户数据集的行数,指定用以进行时间序列分析的变量名,指定想要预测的期数,指定和时间序列的周期长度,最后是用户下载模型预测数据的按钮。
右边是用户所上传数据的显示窗口,拟合的模型信息,原始序列图以及预测图。
下面小罗以自己的数据进行演示:
1. 上传数据
2. 指定数据集显示的行数以及时间序列变量
可以看到,在指定了分析变量以后,所拟合的模型结果就已经出来了,并且所有的图片都提供右键点击下载哟。如果您的时间序列数据的周期并不是默认的12,那么您可以在"The period of your time series" 那一栏进行修改。
顺便提一句,模型的评价是基于summary函数的,包含ARIMA需要展示的参数以及模型评价的AIC,BIC等指标,可以说是比较全面的。
3. 改变预测长度以及下载预测数据集
点击 download 按钮,即可下载预测的数据。
预测的数据集展示:
最左边一列是预测期数的指示变量,第二列是点估计的结果,剩下的四列分别是不同 comfidence level 的区间估计结果。
如何使用?
通过外网发布的版本目前还在开发阶段,并且界面会更加友好,更加智能。但目前只能使用线下版本,即下载小罗的源代码,在本地使用R进行打开。但大家放心,需要大家做的工作只有 Ctrl + Enter 。
首先把ARIMA文件夹放在一个您熟悉的位置,然后运行下面代码即可,注意,把runApp()括号里面的路径改一下。
结语
自从SAS、SPSS、R等统计分析软件出来以后,统计分析的时间已经大幅度缩短,程式化的过程是目前统计分析的一大特点,那么下一步,我们应该朝着智能化,集成化以及自动化的统计分析迈进。
需要源代码文件的同学,给小罗留邮箱。
以上是关于如何快速的做ARIMA时间序列分析的主要内容,如果未能解决你的问题,请参考以下文章