Python时间序列实践之奶牛产奶量预测
CSDN:http://blog.csdn.net/kicilove/article/
数据及完整示例代码下载(https://github.com/zhaohuicici/Time-Series-Model)
分析流程:
1. 使用pandas读入数据、整理数据;
2. 检验数据的稳定性;
3. 数据进行平稳性处理;
4. 使用statsmodels库中相关的时间序列函数进行时间序列模型AR、MA、ARIMA的识别;
5. 拟合模型;
6. 模型诊断;
7. 预测结果。
前言:
时间序列是时间间隔不变的情况下收集的时间点集合。这些集合被分析用来了解长期发展趋势,为了预测未来或者表现分析的其他形式。每时刻的甲醛浓度变化、每日股票闭盘价格、共享单车每日租车数等等都可以看做一系列时间点上的观测,在一系列时间点上观测获取的数据也就是我们俗称的时间序列数据。文中使用matplotlib库进行数据可视化,使用pandas进行数据整理,使用statsmodels库中时间序列相关函数建模分析。由于时间序列和时间相关连,不同的数据有不同的建模方法,本文仅为了介绍时间序列常用的建模流程,不会追求真正的精度,对于精益求精的同学可以尝试使用不同模型和参数对比提高预测结果。
数据介绍
本文将使用一头从1962年一月到1975年12月的每月产奶量的数据集,单位为:磅。
数据及完整示例代码下载(https://github.com/zhaohuicici/Time-Series-Model)
一.所用库的导入
所需要的库主要分为三部分:
数据处理:pandas
时间序列建模:statsmodels
可视化:matplotlib
载入需要的库
二.使用pandas读入数据、整理数据
读入所需要的奶牛产奶量数据集,并且可视化数据集,代码如下:
从上图可以看出,数据呈现出明显的整体上升趋势,并且也有季节性的迹象。
为了方便处理,我们将数据进行重新索引,代码如下:
三.平稳性检验
数据处理完毕,下