ARMA模型建模流程

建模流程

1)平稳性检验

原始数据data经过清洗得到data_new,然后进行平稳性检验,非平稳数据无法采用ARMA模型进行预测,ADF检验可以用来确定数据的平稳性,这里导入的是statsmodels包下的adfuller函数。

2)白噪声检验

白噪声数据没有分析价值,所以要进行白噪声检验,LB检验可以确定数据是否为白噪声,这里导入的是statsmodels包下的acorr_ljungbox函数。

3)ACF、PACF图绘制

自相关函数与偏自相关函数图可以用来进行模型的识别,这里我们直接使用statsmodels包下的plot_acf和plot_pacf函数绘制ACF和PACF图。

4)模型定阶

使用AIC准则进行模型参数估计,从statsmodels包导入ARIMA(p,0,q),即ARMA(p,q),通过循环遍历找出使得AIC值最小的模型参数。

5)模型检验

在使用ARMA模型进行预测后,通过计算真实值与预测值之间的差值得到残差序列,并使用LB检验确定残差序列是否为白噪声,若是白噪声,则模型性能较好,反之则差。

结果分析

1)平稳性检验结果

discoveries数据集可视化结果

绘制时间序列数据图像,观其大致平稳,进行ADF检验,得到概率p值为0.007,小于0.05,认为序列平稳。

2)白噪声检验结果

LB检验的概率p值为0.0054,认为该时间序列为非白噪声序列,可以进行后续分析。

3)ACF、PACF图

ACF图(左)与PACF图(右)

可以看出,ACF和PACF图均呈现出明显的拖尾特点,且有一定的周期性,所以需要选取ARMA模型。

4)模型定阶结果

根据AIC准则,选取使得AIC值最小的参数,p=4,q=4,即模型ARMA(4,4)。

5)预测结果

未来10个时间点的预测结果为:

[3.07701677,1.67355553,2.30909501,1.9248518 ,3.02228534,2.60590081,2.81233033,2.3156652 ,2.8091806,2.79388168]

模型拟合与预测结果图

6)模型检验结果

残差图

从残差图可以看出,残差序列平稳,进行白噪声检验,得到LB检验的概率p值为0.277,认为残差序列为白噪声序列,模型性能较好。

ARMA模型特点:

优点:模型简单,易于解释。

缺点:只能处理平稳时间序列,而现实生活中的数据以非平稳时间序列为主;只适用于短期预测。

python代码:https://download.csdn.net/download/m0_48973594/85800097https://download.csdn.net/download/m0_48973594/85800097

ARMA模型时间序列分析全流程(附python代码)相关推荐

  1. 集成学习-模型融合学习笔记(附Python代码)

    1 集成学习概述 集成学习(Ensemble Learning)是一种能在各种的机器学习任务上提高准确率的强有力技术,其通过组合多个基分类器(base classifier)来完成学习任务.基分类器一 ...

  2. Stacking 模型融合详解(附python代码)

    向AI转型的程序员都关注了这个号

  3. 路面病害检测-从数据清洗到模型部署的全流程方案

    转自AI Studio,原文链接: 路面病害检测-从数据清洗到模型部署的全流程方案 - 飞桨AI Studio 1. 项目说明 无论是水泥还是沥青路面,在通车使用一段时间之后,都会陆续出现各种损坏.变 ...

  4. R语言分时滞后模型时间序列分析在空气污染与健康领域的应用(2)

    气温对健康影响的滞后性已得到公认.传统的GLM 与 GAM 模型在分析空气污染与健康效应之间的关系时,只考虑到当天气温的影响,没有考虑其他滞后时间气温的混杂作用. 上一章我们使用广义线性模型( gen ...

  5. 教程 | 理解和实现自然语言处理终极指南(附Python代码)

     教程 | 理解和实现自然语言处理终极指南(附Python代码) 时间 2017-02-16 14:41:39 机器之心 原文  http://www.jiqizhixin.com/article ...

  6. 机器学习系列(12)_XGBoost参数调优完全指南(附Python代码)

    机器学习系列(12)_XGBoost参数调优完全指南(附Python代码) 原文链接:http://blog.csdn.net/han_xiaoyang/article/details/5266539 ...

  7. python 合并工作簿_Excel:快速合并多张表格或多个文件(工作簿)的数据(附Python代码)...

    Excel:快速合并多张表格或多个文件(工作簿)的数据(附Python代码) 现实工作中经常遇到将零散的原始数据合并统计的工作要求,如月度统计或年度统计等.原始数据的收集大多是按时间(如日期或小时)进 ...

  8. python随机森林变量重要性_推荐 :一文读懂随机森林的解释和实现(附python代码)...

    原标题:推荐 :一文读懂随机森林的解释和实现(附python代码) 作者:WilliamKoehrsen:翻译:和中华:校对:李润嘉 本文约6000字,建议阅读15分钟. 本文从单棵决策树讲起,然后逐 ...

  9. Excel:快速合并多张表格或多个文件(工作簿)的数据(附Python代码)

    Excel:快速合并多张表格或多个文件(工作簿)的数据(附Python代码) 现实工作中经常遇到将零散的原始数据合并统计的工作要求,如月度统计或年度统计等.原始数据的收集大多是按时间(如日期或小时)进 ...

最新文章

  1. c语言常见50题 及答案(递归 循环 以及常见题目)
  2. 《python从入门到精通》——生成由数字、字母组成的4位验证码
  3. 设置路由器端口转发功能如何操作
  4. Android ImageView图片自适应
  5. Sentinel(十七)之启动配置项
  6. MySQL基础——DDL语言学习\数据库的建立\MySQL数据类型\MySQL常见约束\表的增删改
  7. spring 14-Spring框架JDBC操作
  8. c++------------之---【虚析构函数应用】
  9. pjk static tp.php,在测试服上偶然出现 Error: Loading chunk 5 failed.
  10. Nginx+tomcat整合
  11. 熊猫烧香源码--假的:)
  12. Axure share 二三事
  13. oracle if语句使用方法,Oracle IF语句的使用
  14. IBEACON 解析代码(C语言和LUA语言)
  15. python批量导入图片_Python批量导入图片生成PowerPoint 2007+文件
  16. python helper方法_Python io_utils.ImportHelper方法代碼示例
  17. matlab仿真培训班,Matlab/Simulink进行微网系统仿真建模培训
  18. 利用陀螺仪实现更真实的微信摇一摇动画
  19. 混迹职场N年后,人过中年,如何不被社会所淘汰?
  20. 织梦cms模板下载:集团企业通用织梦模板

热门文章

  1. TTP233H-BA6功能介绍于适用场景;
  2. 华为手机连接Wi-Fi提示 “网络拒绝接入”
  3. Python海里换算成公里的程序实现代码
  4. 【数据挖掘面经】腾讯+百度+华为(均拿到sp offer)--转
  5. 国人骄傲!中国方案开花结果,马来西亚尝到大甜头!
  6. 2018数学建模国赛
  7. zw2012激活方法
  8. 微信公众账号服务号自定义菜单配置与实现
  9. HJS-DE1/2时间继电器
  10. Python测试函数出现错误问题解决:AssertionError: None != ‘Janis Joplin‘