一、工具产生背景

在生产中我们常会根据历史数据去预测未来的发展趋势。比如客户投诉量、用户留存率、页面点击率等等。

对于预测功能的需求多但是具备相应能力的分析师却很少。想做出一份精准的预测需要具备很多专业的知识和技能。因此有必要做一个分析工具,即简单易用又能实现良好的预测效果。因此开发了该ARIMA的预测模型以实现在Excel中轻轻松松即可完成一份准确的预测。

ARIMA是常用的时间序列分析模型,且其预测效果得到了广泛的公认。因此,可以考虑将该模型可视化,提供给用户。

二、使用工具

点击SqlCel选项卡下的“时序分析”按钮,如下:

将弹出以下对话框:

接下来具体介绍功能的使用:

1、选择数据集

选择的数据集需满足以下条件:

1)首行是字段

2)总共两个字段,第一个字段是日期时间,第二个字段是对应的数值

如下:

在本例中,我们使用经典的airpassengers数据集。

2、周期

周期是以下所有分析的基础,默认值是12。周期设置不同对结果有较大影响。

周期体现的是一组数据的周期性。它可以通过用户的个人经验来设置。也可以通过相关图来判断。现在介绍相关图判别法。我们先设置一个比较大的周期,然后点击“相关图”按钮将产生时间序列的相关图,观察自相关图(Autocorrelation),一般取相关系数超出置信边界,且系数较大、阶数较大的那一阶为周期:

此图中可以比较明显的观察出周期为12。

3、平稳性检验

平稳性检验用于判断数据的平稳性。点击“平稳性检验”按钮可以输出时序图和DF检验表(单位根检验)。如下:

通过时序图可以观察数据趋势和以周期为窗口的滚动平均值及滚动标准差。滚动均值可以消除周期性并体现数据的趋势性,滚动标准差可以体现数据的波动性大小。

DF检验以数字的形式判断数据的平稳性,可以给出更严谨的判断标准。判断规则如下:

1)如果P值小于0.05,那么我们即可断定数据是平稳的;

2)如果P值大于0.05,当统计量大于0且小于关键值(1%)或统计量小于0且大于关键值(1%),可以酌情接受平稳性假设;

3)如果统计量大于关键值(1%)则拒绝平稳性假设;

4)P值并不是越小越好,尽量通过少量的平稳性处理步骤满足P值可选即可。

4、平稳性处理

ARIMA模型只能用来预测平稳性序列,因此平稳性处理至关重要。每次平稳性处理之后都会自动做一次平稳性检验。

1)输出

如果勾选“输出”复选框则每次处理后的结果都可以即时输出到当前工作簿。如果取消勾选则仅做数据处理,不输出数据。默认情况下是勾选的。

2)分解
分解操作可以自动将原数据分解成趋势性、季节性和残差三个部分。如下图所示:

数据分解会忽略其它所有平稳性处理操作仅处理原始数据,并且数据分解之后不可以再做其它平稳性处理。后续的模型拟合和预测仅在分解后的数据上进行。

如果在分解操作前需要做对数变换,则可在Excel里面先用LN函数处理原始数据,最后用EXP函数还原预测结果。

3)差分

差分是对等周期间隔的数据线性求减,它是最常用的平稳性处理方法,是ARIMA模型的重要组成部分。

差分的期数是线性相减的周期间隔,一般应小于3,或设为周期数。差分复选框可多次勾选或取消勾选,每次勾选都会在原数据的基础上做一次差分处理。

需要注意的是如果需要做对数变换和移动平均操作需在差分前进行。

4)对数变换

对数变换要求所有的数据均大于0。它可以很好的消除数据的波动性(趋势性和周期性)。是平稳性处理比较理想的选择。

5)移动平均

移动平均可以很好的消除周期性。但是它会引起预测结果较大的波动,它对近期的预测具有较好的效果。

5、模型拟合

模型拟合的关键是设置AR模型的阶数p和MA模型的阶数q。选择阶数可以通过观察相关图判断或者通过AIC准则或BIC准则自动判断。

1)相关图观察

完成平稳性处理后,我们可以点击“相关图”按钮生成当前数据的相关图。自相关图(Autocorrelation)用于确定MA(q),偏自相关图(Partial Autocorrelation)用于确定AR(p)。一般从自相关系数超出置信边界的阶数中选取阶数较小且系数较大的阶数作为p和q的值。然后通过检验模型拟合优度适当调整p和q的值

2)AIC准则

AIC准则以严谨的统计量选择p和q的值。首先设定最大阶数(maxlags),然后点击“AIC准则”按钮。将生成AIC准则列表和AIC选择结果。AIC准则的判断标准是AIC值越小对应的p和q阶数越合理。如下:

其中最大阶数(maxlags)设置的越大,判断的时间越长。

3)BIC准则

BIC准则的选择方法与AIC准则相似。当两者在模型选择上不同时,我们可以参考残差DW检验从而得出更优的一个选择。

模型拟合

设定p和q后点击“开始拟合”按钮将会输出拟合优度检验报告,如下:

AIC和BIC的值越小说明模型拟合得越充分。残差DW检验的值越接近2说明模型拟合越充分。

同时还会输出残差QQ图,如下:

如果QQ图中的点基本围绕着直线分布,说明残差基本符合正态分布,原数据的信息提取得比较完全,模型拟合较充分。

6、时序预测
模型拟合完毕接下来即可使用拟合好的模型进行预测了。设定向前预测的期数,然后点击“开始预测”。此时输出预测结果的时序图,如下:

同时可向当前工作簿输出预测的结果值。

三、预测原理

根据平稳性处理方法的不同分两种预测方法。

1)分解

ARIMA模型仅预测分解后的平稳序列(残差),趋势性和季节性则是根据分解后的数据分别预测,之后汇总三部分预测结果即为最终的预测结果。

2)其它平稳性处理

ARIMA模型仅预测处理后的平稳序列(残差),所作的每一步平稳性处理操作都会进行还原,在还原平稳性操作之前会对平稳性处理前的数据做预测,之后汇总残差预测和每一步还原结果的预测值即为最终的预测结果。

pgsql 两个时间字段相减_如何在Excel做专业的时间序列分析相关推荐

  1. mysql 时间相减取秒_MySQL两个日期字段相减得到秒的方法

    一.MySQL中两个DateTime字段相减 假定表名为tblName,两个DateTime字段名分别为beginDateTime,endDateTime,以下是相关两个mysql日期字段相减的SQL ...

  2. 两个年月日怎么相减_(excle可以计算日期差值吗)excel表中,两个日期相减如何得出相差年月...

    如何使用excel函数计算两个日期参数的差值 "使用excel函数计算两期参数的差值"的操骤是: 1.以Excel 2016为例,打开Excel工作表: 2.由已知条件可知,需要根 ...

  3. 中两个查询结果相减_位移差?应力差?利用fish语言实现结果文件间运算。

    重要通知:本公众号已开通赞赏功能,各位读者老爷有钱的可以给呱太捧个钱场!推荐使用微信PC端进行阅读,以避免命令流显示畸变.文章所附命令流均可直接复制到FLAC3D 6.0中运行,若有报错,请手动重输命 ...

  4. 两个年月日怎么相减_会议记录应该怎么记?看这里

    [会议记录应该怎么记?] 一.会议记录是什么? 会议记录是将一场线上或者线下的会议的核心内容.基本信息.议程.结果等以文字.表格.图片等形式记录下来的信息合集. 好的会议记录具有尊重事实.高度清晰.总 ...

  5. 两个年月日怎么相减_用EXCEL表格怎么进行年月日的加减??

    2007-09-21 excel里时间(时,分,秒,百分秒)进 是否有这个函数,我不太清楚,我用VBA自己编写了一个,两种方式,任你选择,第二种方式,可以根据实际情况调整循环的大小.单元格的位置. 如 ...

  6. 两个数组结果相减_学点算法(三)——数组归并排序

    今天来学习归并排序算法. 分而治之 归并算法的核心思想是分而治之,就是将大问题转化为小问题,在解决小问题的基础上,再去解决大问题.将这句话套用到排序中,就是将一个大的待排序区间分为小的待排序区间,对小 ...

  7. java编程两个超长正整数相减_【每日编程237期】数字分类

    1012 数字分类 每日编程中遇到任何疑问.意见.建议请公众号留言或直接撩Q474356284(备注每日编程) 给定一系列正整数,请按要求对数字进行分类,并输出以下 5 个数字: A1 = 能被 5 ...

  8. sql中两个时间类型相减得到的值

    原文地址为: sql中两个时间类型相减得到的值 原文地址:http://my.oschina.net/zimingforever/blog/57504 sql中两个时间类型相减得到的值 今天有人把数据 ...

  9. 不同数据库中两列字段相减(某列有空值)

    数据库中两个字段相减(某列有空值)处理方法: sql server中:select (isnull(字段1,0)-isnull(字段2,0)) as 结果 from 表 oracle中:select ...

最新文章

  1. slam中特征点归一化原因以及方法
  2. SAPCAR 压缩解压软件的使用方法
  3. 女人跳槽:最重要的是你的独立,你的快乐
  4. [css] 使用css实现霓虹灯效果
  5. python pandas合并多个excel_python pandas合并多个excel(xls和xlsx)文件(弹窗选择文件夹和保存文件)...
  6. java爬取网页并保存_第九讲:Python爬取网页图片并保存到本地
  7. IDEA 自动生成 serialVersionUID
  8. 【已解决】iOS11使用MJRefresh上拉加载结束tableView闪动、跳动的问题
  9. springboot搞定全局自定义异常
  10. oracle 10g分区表,oracle10g-11gR2 分区表汇总一
  11. UVA148 ZOJ1166 Anagram checker【DFS】
  12. ALSA播放时杂音问题
  13. 腾讯看点CTO徐羽: QQ浏览器背后的推荐AI中台 | AICon
  14. 高频电子线路实验箱QY-JXSY25
  15. qnx 镜像文件_QNX OS镜像
  16. 【CityHunter】游戏流程设计及技术要点
  17. 汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。
  18. 内容提交的时一个图片,但是前端显示的时<img src=“地址“>而不是图片
  19. Android — 创建文件及文件夹
  20. Codeforces Round #802 (Div. 2)

热门文章

  1. Tokyo Tyrant(TTServer)系列(三)-Memcache协议
  2. Python出现SyntaxError: Non-ASCII character '\xe7' in file 错误的解决办法
  3. Sublime Text(2/3)编译lua
  4. 表达式解析执行器 IKExpression
  5. 应用按home键无最近应用
  6. IB客座主编(一)--安普布线亚太区业务总监黎启枝
  7. 解决SELinux导致Apache更改端口后无法启动的问题
  8. Gson与FastJson比较
  9. PLSQL:[1]plsql中文乱码,显示问号
  10. 4.3、Libgdx启动类和配置