时间序列的ADF校验(单位根校验)

时间序列 专栏收录该内容
1 篇文章 0 订阅

时间序列的ADF校验(单位根校验)

使用模块statsmodels里的

导入模块


from statsmodels.tsa.stattools import adfuller

import pandas as pd
%matplotlib inline
import numpy as np
import matplotlib.pyplot as plt

导入数据

df = pd.read_csv('testdata.csv')
df['d_time'] = df['d_time'].apply(pd.to_datetime)
df.set_index('d_time', inplace=True)
df1= df.resample('5s').mean()
df1.reset_index(inplace=True)
df2 = pd.DataFrame(df1['value'])
adfuller(df2)

输出结果

(-1.172934882196818,
 0.6851287621408015,
 52,
 86348,
 {'1%': -3.430425734173461,
  '5%': -2.861573473259827,
  '10%': -2.56678781665506},
 -712254.0157072636)

进行一阶差分,再进行校验

df2_diff = df2.diff()
df2_diff.dropna(inplace=True)
adfuller(df2_diff)

结果

(-36.186333373649646,
 0.0,
 51,
 86348,
 {'1%': -3.430425734173461,
  '5%': -2.861573473259827,
  '10%': -2.56678781665506},
 -712245.3883643872)
参数说明
x (array_like,1d)数据系列
maxlag (int测试中包含的最大延迟,默认为12 *(nobs / 100)^ {1/4}
regression({‘c’,’ct’,’ctt’,’nc’})包含在回归中的常量和趋势顺序‘(c’:仅限常量(默认)‘ct’:恒定和趋势 ‘ctt’:常数,线性和二次趋势 ‘nc’:没有恒定,没有趋势)
autolag {‘AIC’,’BIC’,’t-stat’,无}如果为None,则使用maxlag滞后 如果是’AIC’(默认值)或’BIC’,则选择滞后数以最小化相应的信息标准 基于’t-stat’的maxlag选择。从maxlag开始并使用5%大小的测试来降低滞后,直到最后一个滞后长度的t统计量显着为止
store(bool)如果为True,则另外返回adf统计信息的结果实例。默认值为False
regolults (bool,可选)如果为True,则返回完整的回归结果。默认值为False

返回

说明
adf (float)测试统计
pvalue (float)MacKinnon基于MacKinnon的近似p值(1994年,2010年)
usedlag (int)使用的滞后数量
nobs( int)用于ADF回归的观察数和临界值的计算
critical values(dict)测试统计数据的临界值为1%,5%和10%。基于MacKinnon2010)
icbest(float)如果autolag不是None,则最大化信息标准。
resstore (ResultStore,可选)一个虚拟类,其结果作为属性附加

第一次

(-1.172934882196818,
 0.6851287621408015,
 52,
 86348,
 {'1%': -3.430425734173461,
  '5%': -2.861573473259827,
  '10%': -2.56678781665506},
 -712254.0157072636)

adf>1%’ >5%’ >10%’ 且 p值很大,结论:不平稳

第二次,一阶差分后

(-36.186333373649646,
 0.0,
 51,
 86348,
 {'1%': -3.430425734173461,
  '5%': -2.861573473259827,
  '10%': -2.56678781665506},
 -712245.3883643872)

adf<1%’ <5%’ <10%’ 且 p值<0.05,结论:平稳序列

所以判断为一阶单整

参考:
https://www.itbook5.com/2019/08/11560/

  • 1
    点赞
  • 0
    评论
  • 4
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2020 CSDN 皮肤主题: 游动-白 设计师:白松林 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值