炼数成金 门户 大数据 Python 查看内容

Python绘制时间序列数据的时序图、自相关图和偏自相关图

2017-10-27 09:44| 发布者: 炼数成金_小数| 查看: 14421| 评论: 0|原作者: 董付国|来自: Python小屋

摘要: 时序图、自相关图和偏相关图是判断时间序列数据是否平稳的重要依据。本文涉及的扩展库numpy、pandas、statsmodels一般可以使用pip进行在线安装,如果安装失败,可以到http://www.lfd.uci.edu/~gohlke/pythonlibs/下 ...

Python Java Hadoop 培训 时间序列

时序图、自相关图和偏相关图是判断时间序列数据是否平稳的重要依据。
本文涉及的扩展库numpy、pandas、statsmodels一般可以使用pip进行在线安装,如果安装失败,可以到http://www.lfd.uci.edu/~gohlke/pythonlibs/下载相应的whl文件进行离线安装。
另外,绘制自相关图的函数plot_acf()和绘制偏自相关图的函数plot_pacf()还有更多参数可以使用,请自行挖掘和探索。

from random import randrange
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import matplotlib.font_manager as fm
from statsmodels.graphics.tsaplots import plot_acf, plot_pacf

def generateData(startDate, endDate):
    df = pd.DataFrame([300+i*30+randrange(50) for i in range(31)],\
                      columns=['营业额'],\
                      index=pd.date_range(startDate, endDate, freq='D'))
    return df

# 生成测试数据,模拟某商店营业额
data = generateData('20170601',  '20170701')
print(data)
# 绘制时序图
myfont = fm.FontProperties(fname=r'C:\Windows\Fonts\STKAITI.ttf')
data.plot()
plt.legend(prop=myfont)  
plt.show()
# 绘制自相关图
plot_acf(data).show()
# 绘制偏自相关图
plot_pacf(data).show()

某次运行得到的随机数据为:
                   营业额
2017-06-01   333
2017-06-02   370
2017-06-03   392
2017-06-04   425
2017-06-05   457
2017-06-06   467
2017-06-07   488
2017-06-08   540
2017-06-09   575
2017-06-10   575
2017-06-11   635
2017-06-12   631
2017-06-13   706
2017-06-14   691
2017-06-15   728
2017-06-16   767
2017-06-17   783
2017-06-18   831
2017-06-19   846
2017-06-20   894
2017-06-21   908
2017-06-22   954
2017-06-23   971
2017-06-24  1011
2017-06-25  1051
2017-06-26  1089
2017-06-27  1120
2017-06-28  1118
2017-06-29  1143
2017-06-30  1181
2017-07-01  1240

相应的时序图为:

从时序图来看,有明显的增长趋势,原始数据属于不平稳序列。

相应的自相关图为:

从自相关图来看,呈现三角对称形式,不存在截尾或拖尾,属于单调序列的典型表现形式,原始数据属于不平稳序列。

相应的偏自相关图为:


从偏自相关图形来看,也不存在截尾或拖尾,属于不平稳序列。
对于不平稳序列而言,要获得平稳序列的方法之一就是进行差分运算,请参考“相关阅读”第一条。

欢迎加入本站公开兴趣群
软件开发技术群
兴趣范围包括:Java,C/C++,Python,PHP,Ruby,shell等各种语言开发经验交流,各种框架使用,外包项目机会,学习、培训、跳槽等交流
QQ群:26931708

Hadoop源代码研究群
兴趣范围包括:Hadoop源代码解读,改进,优化,分布式系统场景定制,与Hadoop有关的各种开源项目,总之就是玩转Hadoop
QQ群:288410967 

鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

热门频道

  • 大数据
  • 商业智能
  • 量化投资
  • 科学探索
  • 创业

即将开课

 

GMT+8, 2018-5-23 01:56 , Processed in 0.157345 second(s), 25 queries .