数据挖掘--挖掘建模-时序模式-ARIMA模型
代码与数据来源:Python数据分析与挖掘实战
原始数据:
日期 | 销量 |
1/1/2015 | 3023 |
1/2/2015 | 3039 |
1/3/2015 | 3056 |
1/4/2015 | 3138 |
1/5/2015 | 3188 |
1/6/2015 | 3224 |
1/7/2015 | 3226 |
1/8/2015 | 3029 |
1/9/2015 | 2859 |
1/10/2015 | 2870 |
1/11/2015 | 2910 |
1/12/2015 | 3012 |
1/13/2015 | 3142 |
1/14/2015 | 3252 |
1/15/2015 | 3342 |
1/16/2015 | 3365 |
1/17/2015 | 3339 |
1/18/2015 | 3345 |
1/19/2015 | 3421 |
1/20/2015 | 3443 |
1/21/2015 | 3428 |
1/22/2015 | 3554 |
1/23/2015 | 3615 |
1/24/2015 | 3646 |
1/25/2015 | 3614 |
1/26/2015 | 3574 |
1/27/2015 | 3635 |
1/28/2015 | 3738 |
1/29/2015 | 3707 |
1/30/2015 | 3827 |
1/31/2015 | 4039 |
2/1/2015 | 4210 |
2/2/2015 | 4493 |
2/3/2015 | 4560 |
2/4/2015 | 4637 |
2/5/2015 | 4755 |
2/6/2015 | 4817 |
代码:
#-*- coding: utf-8 -*-from __future__ import print_functionimport sys
reload(sys)
sys.setdefaultencoding('utf-8') #UnicodeEncodeError: 'ascii' codec can't encode characters in position 2-3: ordinal not in range(128)import pandas as pddiscfile = '../data/arima_data.xls'
forecastnum = 5data = pd.read_excel(discfile, index_col=u'日期')import matplotlib.pyplot as pltplt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
data.plot()
plt.show()from statsmodels.graphics.tsaplots import plot_acf
plot_acf(data).show() #calc acffrom statsmodels.tsa.stattools import adfuller as ADF
print(u'原始序列的ADF检验结果为: ', ADF(data[u'销量']))
#return value is: adf, pvalue, usedlag, nobs, critical values, icbest, regresult, resstoreD_data = data.diff().dropna()
D_data.columns = [u'销量差分']
D_data.plot()
plt.show()
plot_acf(D_data).show()from statsmodels.graphics.tsaplots import plot_pacf
plot_pacf(D_data).show()
print(u'差分序列的ADF检验结果为: ', ADF(D_data[u'销量差分']))from statsmodels.stats.diagnostic import acorr_ljungbox
print(u'差分序列的白噪声检验结果为: ', acorr_ljungbox(D_data, lags=1))from statsmodels.tsa.arima_model import ARIMApmax = int(len(D_data)/10)
qmax = int(len(D_data)/10)bic_matrix = []for p in range(pmax+1):tmp = []for q in range(qmax+1):try:tmp.append(ARIMA(data, (p,1,q)).fit().bic)except:tmp.append(None)bic_matrix.append(tmp)bic_matrix = pd.DataFrame(bic_matrix)
p,q = bic_matrix.stack().idxmin()
print(u'BIC最小的p值和q值为: %s, %s' % (p,q))model = ARIMA(data, (p,1,q)).fit()
model.summary2()
model.forecast(5)
图1:原始序列的时序图
图2:原始序列的自相关图
图3:一阶差分之后序列的时序图
图4:一阶差分之后序列的自相关图
图5:一阶差分后序列的偏自相关图
数据挖掘--挖掘建模-时序模式-ARIMA模型相关推荐
- ARIMA模型的R实现
1.模型简介 ARIMA模型,全称差分自回归移动平均模型.可以看作是差分运算和ARMA模型的结合.主要是针对具有线性趋势的非平稳的时间序列,来进行建模预测. ARIMA模型的形式如下: Φ(B)∇?? ...
- Python3数据分析与挖掘建模实战
<div>课程地址:http://icourse8.com/Python3_shujufenxi.html</div>复制代码 第1章 课程介绍[赠送相关电子书+随堂代码] 第 ...
- 数据挖掘实战—餐饮行业的数据挖掘之挖掘建模
文章目录 引言 一.分类与预测 1.常用的分类与预测算法 2. 回归分析 3.决策树 4.人工神经网络 二.聚类分析 1.常用的聚类分析算法 2.K-Means聚类算法 2.1 算法过程 2.2 数据 ...
- 股市行情分析是计算机在信息处理领域的应用,流数据时序模式依赖挖掘在股市行情分析中的应用-信息管理专业毕业论文.docx...
中文摘要摘要:随着计算机信息技术的飞速发展,出现了一种新数据模型--流数据.流 中文摘要 摘要:随着计算机信息技术的飞速发展,出现了一种新数据模型--流数据.流 数据以连续的.快速的.随时间变化的并且 ...
- 数据挖掘——时间序列算法之ARIMA模型
数据挖掘--时间序列算法之ARIMA模型 前言 差分定义 ARIMA模型 实践 1.检验序列的平稳性 2.进行一阶差分后,进行平稳性和白噪声检验 3.对一阶差分之后的平稳非白噪声序列拟合ARMA模型 ...
- ARIMA模型建模步骤
ARIMA模型建模步骤 一. 绘制时序图 判断序列是否有明显的趋势或周期 二. 单位根检验 检验方法 ADF DFGLS PP KPSS ERS NP 前三种有有关常数与趋势项假设,应用不方便,建议少 ...
- Web数据挖掘:挖掘Web内容模式、结构和用途
未整理电子书2 [SharePoint.2010.Site.Owner's.Manual(2012.2)].Yvonne.M.Harryman.文字版.pdf: http://www.t00y.com ...
- 【数据挖掘】时序模式-白噪音-时序图-ADF检验-一阶差分-acf pacf(2021-11-11
时序模式 2. 根据课堂上所讲的概念,编写程序产生以下时间序列数据(时间可以简化用1,2,3. . . . .表示),每种类型数据至少20条数据.并根据自己想法,使用程序画出相应的图. 一. 纯随机序 ...
- 时序数据预测-Arima模型篇
ARIMA模型详解 基本概念 ARIMA(p, d, q)预测模型 ARIMA差分整合移动平均自回归模型,用于时间序列数据分析与预测,相比ARMA模型在AR和MA之间多了差分步骤,目的是把非平稳序列转 ...
最新文章
- gitlab 更新文件_GitLab任意文件读取漏洞公告
- PHP面试题:请以空格作为间隔,拆分字符串’Apple Orange Banana Strawberry’,组成数组$fruit,
- 宿舍管理系统设计分析图
- GNU __attribute 详解
- win7专业版 .bat脚本运行_Win7专业版远程操作详解,帮你轻松入门
- .Net Core DI,如何在程序集中注册所有现有的可分配类型
- 【Spring开发】—— Spring Core
- 日期相关(类与方法)
- 深度剖析MyBatis 的执行流程(3)--映射器
- 调用链监控 - Tracing - APM
- HoloLens开发的需求与标准总结
- unix/linux io监控
- jquery end()用法
- 在线圆型针织内衣机织物CAD系统设计
- Eclipse Unable to install breakpoint in XXX 解决办法
- react路由传参的几种方式
- C++中内存数据库SQLite的使用
- Android VR 视屏
- python画图,中文字体乱码,设置plt.rcParams不成功时
- 学计算机用什么cpu,做设计用什么cpu