精华内容
下载资源
问答
  • 可以对数据进行差分,对数差分等平稳化处理
  • 数据平稳性检测

    2019-10-05 10:08:59
    转自 Python 数据分析与数据挖掘 目的:确定数据序列是否有随机趋势或确定趋势,防止伪回归 如果不平稳,则对其进行差分处理一直到平稳为止 ...adf = ADF(data['CWXT_DB:184:D:\\']) #取得平稳性检测指标 whi...

    转自 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]))

     

    展开全文
  • 时间序列数据平稳性检验实验指导.pdf
  • 本文参考了文献[6]中的平稳性检验方法,设计了一个信号平稳性检验系统,并在 Matlab的GUI开发环境下实现了图形用户界面的设计。实践表明,本系统不但提供了友好的用户界面,并且可以方便地完成信号的平稳性检验。
  • 时间序列的平稳性检验、协整检验和误差修正模型等的博文。 2.博主是一个普普通通的大学生,没有很厉害的技术,写的内容都是不太正经的偏小白简单的,写的也是学校教过的知识消化后自己的见解,不是很学术研究的博文...

    一、简介

    1.本篇博文是一篇关于线性回归的基本操作;时间序列的平稳性检验、协整检验和误差修正模型(在下一篇博文里延续传送门)等的博文。

    2.博主是一个普普通通的大学生,没有很厉害的技术,写的内容都是不太正经的偏小白简单的,写的也是学校教过的知识消化后自己的见解,不是很学术研究的博文。

    3.配置:Window 7旗舰版+64位操作系统+StataIC 14(64-bit)

    二、数据描述性统计分析

    1.导入数据

    (1)打开StataIC软件,在软件的上栏目中找到下图圈出的图标,那个图标就是导入数据的入口
    在这里插入图片描述
    (2)点进去之后,StataIC软件会新弹出另一个窗口出来给你放数据,如下图。
    在这里插入图片描述
    (3)一般下载到的数据都是Excel文件格式的xsl文件,是无法直接用StataIC打开的。我们可以打开Excel文件,把需要的数据选择之后复制,再打开StataIC的数据界面粘贴。

    粘贴后StataIC会弹一个提示窗口,你只需按红色圈起来的那个Variable names的按钮就能把数据导入StataIC。因为有时候数据的第一行是变量名 (例:x,y,z),你就需要选Variable names;但你的x,y,z之类的变量是要作为数据的,就选择Data按钮。
    在这里插入图片描述
    (5)最后导入成功数据就会出现下图页面。
    在这里插入图片描述

    2.设置时间序列

    (1)tsset是定义数据是一个时间序列数据。如果想对数据文件定义year为时间变量,则输入命令:

    tsset year
    

    若你的数据文件里的时间变量名不为year,你就需要用你的变量名去替换掉我给的命令里的year,如:

    tsset ***                  #***代表你的时间变量名
    

    (2)输入命令,命令输入的地方在StataIC软件的最先下面,输入之后Enter键即可。

    在这里插入图片描述
    StatarIC对输入的内容有要求,和Java一样,不能用中字输入法去输入英文字符串,不然StataIC软件会报错。

    (3)时间序列设置成功就会显示如下图:

    在这里插入图片描述
    如果没有成功,输入栏上方就会显示红色英文句子。但一般出现短横线(如:-)即说明命令成功。

    3.数据描述性统计分析

    1. 命令:sum
      在这里插入图片描述
      结果如下图所示:
      在这里插入图片描述
    2. 命令:sum 变量1 变量2,detail (更详细的描述性统计分析)
      在这里插入图片描述
      结果如下图所示:
      在这里插入图片描述

    三、绘图——趋势图和散点图

    1. 趋势图

    1. 命令:
    line varname,title(图表名)xtitle(变量x的名称)ytitle(xxx)     #若是不需要显示名称,让括号里面为空即可                           
    
    1. 例:

    命令:
    line gdpr consr year,title(增长率)xtitle(年)ytitle()
    在这里插入图片描述
    绘图结果会以新的窗口形式弹出来,结果如下图显示:
    在这里插入图片描述

    2、散点图

    1. 第一种:

    (1)命令:

    twoway(scatter varname1 varname2)(lfit varname1 varname2 )      
    
    #varname1 varname2是变量1和变量2的名称的意思
    
    • 其中“ lfit"表示”linear fit"(线性拟合),形状为直线。
    • 如果想在散点图上同时画出二次回归曲线,直接将“ lfit"改为“qfit",(二次拟合),形状为曲线。

    (2)例一(lfit):
    输入命令:twoway (scatter infla unemp) (lfit infla unemp)
    在这里插入图片描述
    结果如下图所示:
    在这里插入图片描述

    (3)例二(qfit):
    输入命令:twoway (scatter infla unemp) (qfit infla unemp)
    在这里插入图片描述
    结果如下图所示:
    在这里插入图片描述
    要区别于例一,一个为lfit,一个为qfit。

    1. 第二种:

    (1)命令:

    aaplot varname1 varname2               #varname1 varname2是变量1和变量2的名称的意思
    
    • 第一步:先安装外部命令aaplot,输入命令:ssc install aaplot
    • 第二步:输入命令 aaplot varname1 varname2

    (2) 例:
    输入命令:aaplot infla unemp
    在这里插入图片描述
    结果如下图所示:
    在这里插入图片描述

    3.变量差分后的趋势图

    1. 命令:
    line dvarname1 dvarname2 时间变量名
    
    1. 例:

    输入命令line dinfla dunemp year:
    在这里插入图片描述
    结果如下图所示:
    在这里插入图片描述

    四、数据相关性分析

    第一步:

    1. 命令:
    correlate varname1 varname2                #varname1 varname2是变量1和变量2的名称的意思
    
    1. 1.例:
      输入命令:correlate gdpr consr
      在这里插入图片描述
      结果如下图所示:
      在这里插入图片描述

    第二步:

    1. 命令:
    pwcorr varname1 varname2,sig 
    
    1. 1例:
      输入命令pwcorr gdpr consr,sig:
      在这里插入图片描述
      结果如下图所示:
      在这里插入图片描述

    五、数据平稳性分析

    1.单位根检验

    1. 命令:
    dfuller varname
    

    例:

    • (1)输入命令(检验第一个变量gdpr)dfuller gdpr:
      在这里插入图片描述

    • 结果如下图所示:
      结论:gdpr不平稳
      在这里插入图片描述

    • (2)输入命令(检验第一个变量consr) dfuller consr:
      在这里插入图片描述

    • 结果如下图所示:
      结论:consr不平稳
      在这里插入图片描述

    2.CF和PACF图

    1. 绘制自相关图,命令:
    ac varname
    
    1. 绘制偏自相关图,命令:
    pac varname     
    
    1. 例一:
      (1)输入命令ac gdpr(做gdpr的自相关图):
      在这里插入图片描述
      结果如下图所示:
      在这里插入图片描述
      (2)输入命令ac consr(做consr的自相关图):
      在这里插入图片描述
      结果如下图所示:
      在这里插入图片描述
    2. 例二
      (1)输入命令pac infla:
      在这里插入图片描述
      结果如下图所示:
      在这里插入图片描述
      (2)输入命令pac unemp:
      在这里插入图片描述
      结果如下图所示:
      在这里插入图片描述

    3.若序列不平稳,生成差分变量,再做单位根检验

    1. 生成差分变量

    命令:

    gen dvarname1=d.varname1                        #别忘了变量名前的d
    gen dvarname2=d.varname2                        #varname1 varname2是变量1和变量2的名称的意思
    

    例:
    (1) 输入命令:
    gen dgdpr=d.gdpr
    gen dconsr=d.consr
    在这里插入图片描述
    在这里插入图片描述
    结果如下图所示:
    在这里插入图片描述
    2. 对差分后的新变量,做单位根检验:

    命令:

    dfuller dvarname1                #别忘了变量名前的d
    

    例:

    1. 输入命令:dfuller dgdpr
      在这里插入图片描述
      结果如下图所示:
      结论:dgdpr平稳
      在这里插入图片描述
      输入命令:dfuller dconsr
      在这里插入图片描述
      结果如下图所示:
      结论:dconsr不平稳
      在这里插入图片描述

    六、总结

    • 由于俩时间序列是非平稳的,gdpr和consr都是一阶单整的。

    七、后续

    • 下一篇博文会在这篇博文的基础上写关于协整检验和误差修正模型的操作。

    在这里插入图片描述
    码字总结不易,点个赞吧(*・ω< )

    展开全文
  • AR模型与数据平稳性之间的关系

    千次阅读 2017-12-19 22:17:00
     前几天碰到一个序列分析的问题,涉及到自回归(auto-regression, AR)等模型,但如何确定序列的平稳性呢? 发现金融数据分析里,这方面的知识很多,以后用到可以借鉴,例如伍德里奇《计量经济...

    作者:桂。

    时间:2017-12-19  21:39:08

    链接:http://www.cnblogs.com/xingshansi/p/8068021.html 


    前言

      前几天碰到一个序列分析的问题,涉及到自回归(auto-regression, AR)等模型,但如何确定序列的平稳性呢? 发现金融数据分析里,这方面的知识很多,以后用到可以借鉴,例如伍德里奇《计量经济学导论》,高铁梅《计量经济分析方法与建模》,关键词:序列检测与判定、概率模型、统计。

    一、平稳特性

    序列的平稳特性通常从三个方面分析:

    1)均值

    均值不应该是关于时间t的函数,而应该是一个常数。

    2)方差

    方差不应该是时间的函数,即方差需要有:同方差性(homoscedasticity)

    3)协方差

    i时刻与i+m时刻协方差不应该是时间的函数:

    常用的平稳定义包括:1)严平稳;2)宽平稳;对于手中的序列,严平稳难以判定,通常用宽平稳判据:一阶矩、二阶矩,即从均值、方差角度考虑,而不再考虑高阶分布特性。

    给定序列:

    X(t) = Er(t)

    其中Er(t)为高斯白噪声序列,则x(t)为平稳信号。

    给定序列:

    X(t) = X(t-1) + Er(t)

    这便是随机游走:

    小女孩从初始位置出发,经过若干步之后,位置可表示为:

    X(t) = X(0) + Sum(Er(1),Er(2),Er(3).....Er(t))

    随机游走的平稳性:

    1)均值

    E[X(t)] = E[X(0)] + Sum(E[Er(1)],E[Er(2)],E[Er(3)].....E[Er(t)])

    均值是常数。

    2)方差

    Var[X(t)] = Var[X(0)] + Sum(Var[Er(1)],Var[Er(2)],Var[Er(3)].....Var[Er(t)])

    Var[X(t)] = t * Var(Error) = Time dependent.

    方差是时间的函数,可见随机游走是非平稳过程

     

    二、平稳性检验

     上文分析随机游走:

    X(t) = X(t-1) + Er(t)

    是非平稳过程。

    白噪声序列:

    X(t) = Er(t)

    是平稳随机过程。

    现在进行折中:

    X(t) = Rho * X(t-1) + Er(t)

    上面两个例子分别对应Rho = 0、1.

    Rho = 0:

    Rho= 0.5:

    Rho = 0.9:

    Rho = 1:

    从图中可以看出,除了Rho = 1具有明显的非平稳特性外,其余序列都可近似看作平稳特性,此时已经不是严格意义的平稳(不一定满足宽平稳条件),通常借助其他方式检验:

    H0:...; H1:...,进行判定。

     

    三、其它

    对于AR模型:

    先看AR(1)的情形:

    求方差:

    可以看出平稳条件:,这与上文Rho绝对值介于(0,1)的结论是一致的。

    推广到AR(2):

    平稳条件为对应特征方程(高数-齐次方程的内容):

    即:

    更一般地,对于AR模型:特征值均论在单位圆内。可以看出平稳的判定是一种思路,与平稳条件:宽平稳并非严格等价。但这提供了检验平稳性的思路。ARMA等模型的分析与此类似,AR、ARMA的模型要求序列满足平稳特性,但对于拟合残差没有任何约束,基于异方差特性的ARCH等模型就是从这个种子里生出的新芽。

    展开全文
  • 数据平稳性

    万次阅读 2015-05-02 15:48:17
    一、数据平稳性 李子奈曾指出,一些非平稳的经济时间序列往往表现出共同的变化趋势,而这些序列间本身不一定有直接的关联,此时,对这些数据进行回归,尽管有较高的R平方,但其结果是没有任何实际意义的。这种情况...

    一、数据平稳性

    李子奈曾指出,一些非平稳的经济时间序列往往表现出共同的变化趋势,而这些序列间本身不一定有直接的关联,此时,对这些数据进行回归,尽管有较高的R平方,但其结果是没有任何实际意义的。这种情况称为称为虚假回归或伪回归(spurious regression)。他认为平稳的真正含义是:一个时间序列剔除了不变的均值(可视为截距)和时间趋势以后,剩余的序列为零均值,同方差,即白噪声。

    二、特征与判断

    给出一个随机时间序列,首先可通过该序列的时间路径图来粗略地判断它是否是平稳的。一个平稳的时间序列在图形上往往表现出一种围绕其均值不断波动的过程;非平稳序列则往往表现出在不同的时间段具有不同的均值(如持续上升或持续下降)。下图(a)可以初步判断数据具有平稳性。而(b)显示出非平稳性


    进一步判断:检验样本自相关函数及其图形。随着之后阶数的增加,样本自相关函数下降且趋于零。但从下降的速度来看,平稳序列要比非平稳序列快得多。

    三、例子

    例1:

    从图像上看,它在样本均值0附近上下波动,且样本自相关系统迅速下降到0,随后在0附近波动且逐渐收敛于0.因此,初步判断,该随机过程是一个平稳的过程。


    例2:该序列具有相同的均值,但从样本自相关图形看,虽然自相关系统迅速下降到0,但随着时间的推移,则在0附近波动且呈现发散的趋势。因此,初步判断,该随机过程是一个非平稳过程。





    展开全文
  • 数据挖掘——时间序列算法之平稳性检验平稳时间序列定义时间序列平稳性检验针对平稳和不![在这里插入图片描述](https://img-blog.csdnimg.cn/20200416154317496.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5...
  • 上文我们已经知道了什么是时间序列的平稳性,也见到了一些平稳时间序列和非平稳的时间序列,那么当我们有一个新的时间序列数据时,怎么判断它是否是平稳的呢?时间序列平稳性检验方法,可分为三类:图形...
  • 用 Python 检验时间序列的平稳性

    千次阅读 多人点赞 2020-10-27 08:40:00
    在做时间序列分析时,我们经常要对时间序列进行平稳性检验,而我们常用的软件是SPSS或SAS,但实际上python也可以用来做平稳性检验,而且效果也非常好,今天笔者就讲解一下如何用pyth...
  • Python量化基础:时间序列的平稳性检验

    万次阅读 多人点赞 2019-01-31 16:06:43
    时间序列数据平稳性对于我们采用什么样的分析方式、选择什么样的模型有着至关重要的影响。 我们想一下,假如一个时间序列的波动趋势从来没有稳定过,那么它每个时期的波动对于之后一段时期的影响都是无法预测的,...
  • 时间序列的平稳性和单位根检验 内容包括时间序列的平稳性和单位根检验的讲述与具体的分析步骤。ppt格式的。
  • 时间序列平稳性检验方法分析及应用研究,陈海龙,王钧婷,判断时间序列的平稳性是时间序列分析的重要环节。由于平稳信号与非平稳信号的性质差别显著,所以判断时间序列的平稳性非常重要。
  • matlab平稳性检验

    千次阅读 2018-09-11 17:52:06
    matlab有平稳检验的函数。函数说明如下: dfARDTest Augmented Dickey-Fuller unit root   test for AR model with drift  dfARTest ...
  • ppt平稳性的定义;平稳性的检验方法(ADF检验);伪回归的定义;协整的定义及检验方法(AEG方法);误差修正模型的含义及表示形式.
  • R语言——单位根检验/平稳性检验

    千次阅读 2021-04-30 11:24:19
    这里RM1是指货币供应量的同比增长率,想要检验RM1的平稳性。 先安装程序包tseries: 调用tseries: 进行单位根检验: P值为0.2843,大于0.05,不能拒绝原假设,认为RM1存在单位根,即不平稳。 这里的x[,2]...
  • Python时间序列--数据平稳(四)

    千次阅读 2020-04-27 15:09:06
    平稳性是用来描述时间序列数据统计性态的特有术语。 2.时间序列平稳性的理解 凭以推测经济系统(或其相关变量)在未来可能出现的状况,亦即预测经济系统(或其相关变量)的走势,是我们建立经济计量模型的主要目的。...
  • 平稳性:时间序列的平稳性通常是指弱平稳, 就是时间序列yt的期望值、方差以及协方差均值不随时间t的变化而变化。检查序列平稳性可以看序列自相关图或者用单位根检验,但是一般都用单位根检验,而单位根检验用的最多...
  • 数学建模数据分析——趋势性检验和平稳性检验 在数学建模比赛中,经常需要对数据进行分析和预处理,常见的比如趋势分析(上升/下降/无明显趋势)和突变分析,很多时候靠人的经验观察得出结论,但这是不够严谨的。...
  • 2.1 平稳性检验 一 、概率分布与特征统计量 Xt,t=1,2,⋅⋅⋅,tX_t,t=1,2,···,tXt​,t=1,2,⋅⋅⋅,t 在描述一个随机变量时是用 分布函数F(x)F(x)F(x) 特征统计量: 期望E(Xt)E(X_t)E(Xt​),方差D(Xt)D(X_t...
  • R语言:平稳性的检验1

    千次阅读 2020-04-13 15:51:37
    对序列的平稳性的检验有两种方法:一种是图检验方法,即根据时序图和自相关图所显示的特征做出判断;一种是统计检验方法,即构造检验统计量进行假设检验。 图检验方法是一种操作简便、运用广泛的平稳性判别方法。它...
  • 时间序列的平稳性检验与随机性检验

    万次阅读 多人点赞 2019-04-05 14:42:56
        对于一个时间序列,在进行建模之前,首先需要进行平稳性检验和纯随机性检验,然后根据检验的结果再选择适合的模型。在讲解平稳性和随机性的定义之前,我们先介绍一下时间序列中常用的几个特征统计量。 2.1...
  • 拿到一个观察值序列后,首先要对它的纯随机性和平稳性进行检验,这两个重要的检验称为序列的预处理。根据检验结果可以将序列分为不同的类型,对不同类型的序列会采取不同的分析方法。 对于纯随机序列,又叫白噪声...
  • 模型介绍 ARIMA,差分自回归滑动平均模型,又称求自回归滑动平均模型,是时间序列预测分析方法之一。 ARIMA(p,d,q)中,AR是“自回归”,p为自回归...d是使之成为平稳序列所做的差分次数(阶数)。 1. ARIMA的优...
  • 基于替代数据方法的信号平稳性检验,纪冠群,李明,在对信号进行处理时,确定信号是否平稳是处理信号的前提。因此,信号的平稳性检测在信号处理中有着十分重要的作用。本文通过对原
  • 用python处理时间序列数据,检验平稳性跟纯随机性
  • 时间序列-平稳性

    千次阅读 2019-02-19 17:07:31
    1.时间序列的平稳性  1.1 任何一个时间序列都可以被看做是由随机过程产生的结果。和普通两变量和多变量不一样,任何一个时间点上的值都是随机过程产生的,也是都是随机的。  1.2 如果一个随机过程所产生的时间...
  • 01 引言 金融数据主要分为时间序列(时间维度)、横截面(个体维度)和面...金融时间序列分析是量化投资建模的重要基础,今天给大家分享时间序列的一些基础概念,包括自相关性、偏自相关性、白噪声和平稳性,以及Py...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 42,505
精华内容 17,002
关键字:

数据平稳性