python ADF单位根检验,序列平稳性检验
文章目录
- 平稳性、单位根理解
- python ADF检验
- 参考文章
平稳性、单位根理解
平稳的序列 直观感受如下:
但统计意义上的平稳并不是这样哈,我们都知道一个成语“一叶障目”:当数据量小的时候往往结论比较偏激,当数据量大的时候,什么大风大浪都见过,那么结论就相对靠谱一些。
但还有一种情况:数据量也大,但是结论依旧比较离谱,比如我统计考研人数:
- 第一年上去一拨人,另一波人二战
- 第二年,参加考试的二战的同学凭实力挤下去应届的,但仍有人三战;也有一部分应届生考上了,但另一部分二战
- 第三年…三战的挤下去二战的,二战的挤下去一战的…同样,一战变为二战,二战变为三战,三战变为四战…
所以当我要统计考研人数的时候,其实统计的就是:一战的 + (二战剩下的+三战剩下的+…+N战剩下的),时间维度越长,这个N战剩下的
就对结果影响越大。
其中当我要预测考研人数的时候:二战剩下的+三战剩下的+.....+N战剩下的 = 之前剩下的
这个之前剩下的
就称为单位根
,带着单位根预测有没有问题?没有问题!但是不够准!
单位根检验 / 平稳性检验:就是用来判断是否数据中是否存在“之前剩下的”这一部分,如果能剔除出去,问题就变得简单了,准确性也会更高。单位根检验分很多,更多请参考其他更理论的内容哈
一般常用的就是ADF单位根检验
python ADF检验
- H0:不平稳,存在单位根
- H1:平稳,不存在单位根
示例代码:
from statsmodels.tsa.stattools import adfuller
import numpy as npif __name__ == '__main__':array = np.random.standard_normal(size=100)adf_result = adfuller(array)adf_value = adf_result[0]print("adf值:", adf_value)p_value = adf_result[1]print("p:", p_value)t_value = adf_result[4]print("临界值:", t_value)
得到结果:
adf值: -4.918907632344451
p: 3.203639985122076e-05
临界值: {'1%': -3.506944401824286, '5%': -2.894989819214876, '10%': -2.584614550619835}
如果要证明数据平稳,需要:
- 条件1:
p值
,需要p大于0.05(可以看到上述结果第一个条件都不满足,直接得:序列不平稳) - 条件2:
临界值
这里是三个置信区间,如果adf值
>1%对应的值,说明在置信区间1%内平稳,最苛刻的是10%
参考文章
How to interpret adfuller test results?:https://stackoverflow.com/questions/47349422/how-to-interpret-adfuller-test-results
python ADF单位根检验,序列平稳性检验相关推荐
- python 白噪声检验-时间序列 平稳性检验 白噪声 峰度 偏度
时间序列 简而言之,时间序列就是带时间戳的数值序列.股票,期货等金融数据就是典型的时间序列.量化的过程,很多时间都是在分析时间序列,找到稳定赚钱因子. 平稳性定义 所谓时间序列的平稳性,是指时间序列的 ...
- 格兰杰因果检验准备-平稳性检验-Eviews
概念 平稳性:时间序列的平稳性通常是指弱平稳, 就是时间序列yt的期望值.方差以及协方差均值不随时间t的变化而变化.检查序列平稳性可以看序列自相关图或者用单位根检验,但是一般都用单位根检验,而单位根检 ...
- python白噪声检验_时间序列 平稳性检验 白噪声 峰度 偏度
时间序列 简而言之,时间序列就是带时间戳的数值序列.股票,期货等金融数据就是典型的时间序列.量化的过程,很多时间都是在分析时间序列,找到稳定赚钱因子. 平稳性定义 所谓时间序列的平稳性,是指时间序列的 ...
- python 白噪声检验 结果-时间序列 平稳性检验 白噪声 峰度 偏度
时间序列 简而言之,时间序列就是带时间戳的数值序列.股票,期货等金融数据就是典型的时间序列.量化的过程,很多时间都是在分析时间序列,找到稳定赚钱因子. 平稳性定义 所谓时间序列的平稳性,是指时间序列的 ...
- 平稳性检验(描述性)与纯随机性检验
这篇博客主要记录人大出版<应用时间序列分析>第二章的笔记.本章主要介绍进行时序分析前的预处理,即平稳性检验与纯随机性检验. 平稳性检验(描述性) 平稳性检验的方法分为描述性方法与计量性方法 ...
- python平稳性检验_Python数据分析0.3 用statsmodels进行ADF平稳性检验
#statsmodels用于数据的统计建模分析 #此例为ADF平稳性检验的例子 from statsmodels.tsa.stattools import adfuller as ADF import ...
- python平稳性检验_Python中非平稳时间序列的处理
以下应用有什么共同点:预测未来三个月的一个家庭的电力消耗:估计在一定时期内道路的交通量:以及预测一个股票在纽约证券交易所上交易的价格. 以上都涉及时间序列数据的概念!如果没有"时间" ...
- python时间序列平稳性检验_Python量化投资基础:时间序列的平稳性检验
主要内容: 1. 自相关性和自相关系数 2. 强平稳和弱平稳 3. Python平稳性检验实战 重要性:10分 (1-10). 时间序列数据的平稳性对于我们采用什么样的分析方式.选择什么样的模型有着至 ...
- Eviews7.2模型建模与预测时间序列分析(数据平稳性检验)
一.平稳性检验 (1)绘制时序图 实验步骤:在EVIEWS中建立工作文件,在"Workfile structure type"栏中选择"Date-regular freq ...
最新文章
- linux脚本中的exit,Shell中exit和return的区别讲解
- git fetch和git pull
- Interview:算法岗位面试—10.23下午—上海某科技公司算法岗位(偏机器学习算法,上市)技术面试之比赛积累、项目经验、个人未来发展
- python database is locked_sqlite遇到database is locked问题的完美解决
- 无需SherlockActionbar的SlidingMenu使用详解(二)——向Fragment中添加ViewPager和Tab
- cocos2d-lua 搓牌效果_夏天这样洗澡才叫爽,用它搓一搓,脏东西都出来了
- MyEclipse中将项目的编码从默认GBK改变为默认UTF-8
- OkHttp3源码详解(五) okhttp连接池复用机制
- Android系统开机优化
- 智能对话系统之多轮对话
- 用计算机探究规律的教学反思,《找规律》教学反思(精选11篇)
- 视频教程-手把手教你掌握区块链技术视频教程-区块链
- ffmpeg使用指令转码b站上下载的视频
- P1894 [USACO4.2]完美的牛栏The Perfect Stall
- java算术运算符乘方_用java编写计算器 能够实现简单的加、减、乘、除、乘方、开方运算等;...
- Activiti 介绍
- 区块链技术以太坊简介
- 2019-02-13 思考:1000瓶药水,1瓶有毒,老鼠毒发24h,如何用最少的老鼠在24h内找出毒药?
- Ipopt输出的含义
- MyBatis从入门到精通(十):使用association标签实现嵌套查询