statsmodels笔记:判断数据平稳性(adfuller)

Posted UQI-LIUWJ

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了statsmodels笔记:判断数据平稳性(adfuller)相关的知识,希望对你有一定的参考价值。

1 基本用法

statsmodels.tsa.stattools.adfuller(
    x,
    maxlag = None,
    regression ='c',
    autolag ='AIC',
    store = False,
    regresults = False )

2 举例说明

adfuller(price_A)
'''
(-2.0226025821924765, 
 0.27675142429522215, 
54, 
101983, 
{'1%': -3.430414123085256,
'5%': -2.861568341405142, 
'10%': -2.566785085137168},
 -915434.180263706)

那么这些值都是什么意思呢?,我挑个人觉得比较重要的几个讲

第一行——统计值,用于和下边 1%,5%,和10%临界值比较。但更方便的是直接用下边的p值

第二行——p值,即数据不平稳的概率

第三行——延迟

第四行——本次检测用到的观测值个数

第五~第七行——1%、5%、10%标准下的临界值

3 如何确定数据是否平稳?

有两种看法

1)1%、%5、%10不同程度拒绝原假设的统计值【第五~第七行】和 Test result【第一行】的比较,Test result同时小于1%、5%、10%即说明非常好地拒绝该假设

本数据中,adf结果为-2.02, 大于三个level的统计值。所以是不平稳的

2)P-value是否非常接近0,接近0,则是平稳的,否则,不平稳。

以上是关于statsmodels笔记:判断数据平稳性(adfuller)的主要内容,如果未能解决你的问题,请参考以下文章

时间序列分析ARMA模型原理及Python statsmodels实践(下)

时间序列分析ARMA模型原理及Python statsmodels实践(下)

时间序列分析ARMA模型原理及Python statsmodels实践(下)

时间序列分析ARMA模型原理及Python statsmodels实践(上)

时间序列分析ARMA模型原理及Python statsmodels实践(上)

时间序列分析ARMA模型原理及Python statsmodels实践(上)