数据平稳性检测

转自 Python 数据分析与数据挖掘

目的:确定数据序列是否有随机趋势或确定趋势,防止伪回归

如果不平稳,则对其进行差分处理一直到平稳为止

代码:

#平稳性检测
from statsmodels.tsa.stattools import adfuller as ADF
diff = 0
adf = ADF(data['CWXT_DB:184:D:\\']) #取得平稳性检测指标
while adf[1] > 0.05:#当不平稳的时候
  diff = diff + 1#差分数比如原始序列1,2,3 差分一次为2-1=1,3-2=1,差分两次为1-1=0
  adf = ADF(data['CWXT_DB:184:D:\\'].diff(diff).dropna())#diff 表示差分,参数为次数,dropna表示去除NA值 缺失值

print(u'原始序列经过%s阶差分后归于平稳,p值为%s' %(diff, adf[1]))

 

posted @ 2019-10-05 10:11  LandingGuys  阅读(483)  评论(0编辑  收藏  举报