目录 [隐藏]

  • Abstract
  • 平稳随机过程
  • 肉眼检验
  • 单位根检验
  • ADF Test in Python
  • Reference

Abstract

在ARMA/ARIMA这样的自回归模型中,模型对时间序列数据的平稳是有要求的,因此,需要对数据或者数据的n阶差分进行平稳检验,而一种常见的方法就是ADF检验,即单位根检验。

平稳随机过程

在数学中,平稳随机过程(Stationary random process)或者严平稳随机过程(Strictly-sense stationary random process),又称狭义平稳过程,是在固定时间和位置的概率分布与所有时间和位置的概率分布相同的随机过程:即随机过程的统计特性不随时间的推移而变化。这样,数学期望和方差这些参数也不随时间和位置变化。
平稳在理论上有严平稳和宽平稳两种,在实际应用上宽平稳使用较多。宽平稳的数学定义为:
对于时间序列 yt,若对任意的t,k,m,满足:

则称时间序列 yt 是宽平稳的。

平稳是自回归模型ARMA的必要条件,因此对于时间序列,首先要保证应用自回归的n阶差分序列是平稳的。

肉眼检验

我们以某次天池比赛的数据集为例,如图,是店铺从2015-09到2016-10的销售额:

该数据显然是不平稳的,我们来看看一阶差分:

_series = pd.Series(data=data['cnt']) # 获取data过程省略
diff1 = dta = _series.diff(1)[1:]  # dta[0] is nan
diff1.plot()
plt.savefig('./diff_1.jpg')


看起来似乎均值稳定在0左右,而且也具有一定周期性。

继续来看看二阶差分能否更平稳一些:

看起来二阶差分和一阶差分都比较稳定,肉眼难辨高下。

只用肉眼是分不清是否真的平稳的,因此,我们有必要引入数学方法对平稳进行形式化的检验。

单位根检验

单位根检验是指检验序列中是否存在单位根,因为存在单位根就是非平稳时间序列了。单位根就是指单位根过程,可以证明,序列中存在单位根过程就不平稳,会使回归分析中存在伪回归。
而迪基-福勒检验(Dickey-Fuller test)和扩展迪基-福勒检验(Augmented Dickey-Fuller test可以测试一个自回归模型是否存在单位根(unit root)。迪基-福勒检验模式是D. A迪基和W. A福勒建立的。
关于检验的详细内容,见[6],碍于公式实在太难打了,这里不再赘述。

ADF Test in Python

在python中对时间序列的建模通常使用statsmodel库,该库在我心中的科学计算库排名中长期处于垫底状态,因为早期文档实在匮乏,不过近来似有好转倾向。
statsmodels.tsa.stattools.adfuller中可进行adf校验,一般传入一个1d 的 array like的data就行,包括list, numpy array 和 pandas series都可以作为输入,其他参数可以保留默认.
其返回值是一个tuple,格式如下:

对上面一阶差分的数据进行adf检验,可以得到如下结果:

print sm.tsa.stattools.adfuller(dta)

(-9.1916312162314355, 2.1156279593784273e-15, 12, 338, {'5%': -2.8701292813761641, '1%': -3.449846029628477, '10%': -2.5713460670144603}, 4542.1540700410897)

如何确定该序列能否平稳呢?主要看:

  1. 1%、%5、%10不同程度拒绝原假设的统计值和ADF Test result的比较,ADF Test result同时小于1%、5%、10%即说明非常好地拒绝该假设,本数据中,adf结果为-9, 小于三个level的统计值。
  2. P-value是否非常接近0.本数据中,P-value 为 2e-15,接近0.

ADF检验的原假设是存在单位根,只要这个统计值是小于1%水平下的数字就可以极显著的拒绝原假设,认为数据平稳。注意,ADF值一般是负的,也有正的,但是它只有小于1%水平下的才能认为是及其显著的拒绝原假设。
对于ADF结果在1% 以上 5%以下的结果,也不能说不平稳,关键看检验要求是什么样子的。

但是对于本例,可以很自豪地说,数据是平稳的了。

基于Python的ADF单位根检验方法——时间序列平稳检验相关推荐

  1. adf测试 python_Python时间序列平稳检验--ADF检验

    Refer:https://pengfoo.com/post/machine-learning/2017-01-24 Abstract 在ARMA/ARIMA这样的自回归模型中,模型对时间序列数据的平 ...

  2. Python进行时间序列平稳检验ADFtest(Augmented Dickey-Fuller Unit Root Test)

    Python进行时间序列平稳检验ADFtest(Augmented Dickey-Fuller Unit Root Test) ADF检验全名叫Augmented Dickey-Fuller Test ...

  3. ADF单位根检验方法

    ADF检验,如果序列平稳,则不存在单位根,否则就会存在单位根. 若数据不平稳,则可以做差分变换,查看是否差分后平稳. ADF原假设为,序列存在单位根,即非平稳,对于一个平稳的时序数据,就需要在给定的置 ...

  4. 基于 Python 的 M-K(Mann-Kendall)突变检验 的简单实现

       M-K(Mann-Kendall)法是一种气候诊断与预测技术,可以判断气候序列中是否存在气候突变,如果存在,可确定出突变发生的时间.Mann-Kendall检验法也经常用于气候变化影响下的降水. ...

  5. python单位根检验看结果_Python ADF 单位根检验 如何查看结果的实现

    如下所示: from statsmodels.tsa.stattools import adfuller print(adfuller(data)) (-8.14089819118415, 1.028 ...

  6. python ADF单位根检验,序列平稳性检验

    文章目录 平稳性.单位根理解 python ADF检验 参考文章 平稳性.单位根理解 平稳的序列 直观感受如下: 但统计意义上的平稳并不是这样哈,我们都知道一个成语"一叶障目":当 ...

  7. python 单位根检验代码_Python ADF 单位根检验 如何查看结果的实现

    如下所示: from statsmodels.tsa.stattools import adfuller print(adfuller(data)) (-8.14089819118415, 1.028 ...

  8. 基于Python/MATLAB长时间序列遥感数据处理及在全球变化、物候提取、植被变绿与固碳分析、生物量估算与趋势分析

    目录 专题一.长时序遥感产品在全球变化/植被变绿/植被物候等方面的应用 专题二.MODIS遥感数据产品预处理 专题三.长时序MODIS遥感数据产品时间序列重构 专题四.基于GIMMS 3g和MODIS ...

  9. 基于Python长时间序列遥感数据处理及在全球变化、物候提取、植被变绿与固碳分析、生物量估算与趋势分析

    植被是陆地生态系统中最重要的组分之一,也是对气候变化最敏感的组分,其在全球变化过程中起着重要作用,能够指示自然环境中的大气.水.土壤等成分的变化,其年际和季节性变化可以作为地球气候变化的重要指标.此外 ...

最新文章

  1. mysql+8.0+新特性_MySQL 8.0的一些新特性汇总大全
  2. java多线程 ThreadPoolExecutor 策略的坑
  3. 上传文件_.net core进行文件上传
  4. windows远程修改密码
  5. 驱动列举进程输出到应用层
  6. 新BOJ 88. 最值问题
  7. python如何输入多组数据_Python 中如何实现多组的输入输出
  8. 创建VPC前,网络规划的4个问题你弄清了吗?
  9. html怎么把excel表格合并单元格,Excel中如何快速合并多个单元格
  10. Android -- 开机启动无界面后台程序
  11. php微信公众号测试号token配置失败,微信公众号Token配置失败解决办法
  12. mysql数据表设计 对应成二维数组_结果集数据怎么转换成二维数组
  13. CAN(FD)收发器选型及替换指南(一)
  14. python excel 空值,python 删除空值且合并excel的操作
  15. CSS篇十六——盒子模型之边框
  16. matlab报错Unbalanced or unexpected parenthesis or bracket.
  17. 渐进式 Web 应用程序介绍
  18. 钛智能:南京遇见大咖,区块链如何弯道超车?| ArcBlock 媒体
  19. 【指针】*p++、(*p)++、*++p、++(*p)都是什么东西?
  20. Vue自定义滚动条niceScroll

热门文章

  1. 读书笔记-偷影子的人
  2. 超市积分管理系统(论文+源码)
  3. 如何在电脑上制作请假条表格_单位请假条表格
  4. 新年巨献2021新版QQ选号网源码
  5. 论文写作——引言与语言表达
  6. 【Python打包】Windows下使用Pyinstaller打包pyqt程序遇到的问题记录
  7. Java-PTA 自恋的水仙花
  8. Android中Vitamio使用解析-电视台直播为例
  9. WiFi万能钥匙总裁:下一步重点是场景化大数据
  10. LCD12864点阵型液晶显示器介绍