首页 > 编程知识 正文

stata格兰杰因果关系检验,stata做格兰杰因果检验

时间:2023-05-03 10:20:19 阅读:115791 作者:4344

游骑兵因果检验:“依赖于使用过去某个时刻的所有信息的最佳xydds乘方预测的方差。 '

主要适用于经济变量。

其统计学本质上是对平稳时序数据的预测,只应用于计量经济学的变量预测,不能作为检验真实因果性的依据。

基本步骤:

1 )使当前y回归(如果有所有滞后项y以及其他哪个变量)。 也就是说,y的滞后项yt-1、yt-2、…、yt-q以及其他变量的回归,但是在该回归中不包含滞后项x。 这是被约束的回归。 然后由该回归得到约束的残差平方和RSSR。

2 )在前面的回归式中加入滞后项x,进行包含滞后项x的回归。 这是无约束的回归,因此回归得到无约束的残差平方和RSSUR。

3 )零假设为H0:1=2=…=q=0,即滞后项x不属于此回归。

4 )为了验证这个假说,用f验证,即:

自由度遵循q和(n-k )的f分布。 其中,n是样本容量,q是滞后项x的个数,即受约束回归方程中的估计对象参数的个数,k是无约束回归中的估计对象参数的个数。

5 )如果由选定的显现水平计算的f -数超过阈值F,则拒绝零假设。 这样,延迟x项就属于这个回归,表明x是y的原因。

6 )类似地,通过交换变量y和x可以重复步骤(1) )到) )5)来验证y是否是x的原因。

函数Granger (x,y,alpha,max_lag ) t=长度(x ) x; BIC=Zeros(max_lag,1; RSR=Zeros(max_lag,1; i=1; wileI=max_lagystar=x(I1:t, ); xtar=[Ones(t-I,1 ) zeros (t-I,I ) ] j=1; whilej=Ixstar(:j 1 )=x ) I1-j:t-j ); j=j 1; end [b,bint,r]=Regress(ystar,xstar ); BIC(I, )=t*log(T(r'*r/t ) ) i 1) *log ) t; RSR(I, )=r'*r; i=i 1; 不对end%RSSR附加滞后项x的约束残差平方和x_lag=find(min(BIC ); BIC=Zeros(max_lag,1; RSsur=Zeros(max_lag,1 ); i=1; whilei=max _ lagystar=x (IX _ lag 1: t, ); xstar=[Ones(t-(x_lag i ),1 ) zeros (t-) Ix_lag ),x_lag i ) ] j=1; whilej=x_lagxstar(:j 1 )=x ) Ix_lag1-j:t-j, ); j=j 1; end %滞后项j=1; whilej=Ixstar(3360,x_lag j 1 )=y ) Ix_lag1-j:t-j, ); j=j 1; end [b,bint,r]=Regress(ystar,xstar ); BIC(I, )=t*log(T(r'*r/t ) ) i 1) *log ) t; RSsur(I, )=r'*r; i=i 1; endy_lag=find(min(BIC ); f_num=() rssr(x_lag, )-RSsur )/y_lag, ) )/y_lag ); f_den=RSsur(y_lag, )/) t-() x_lagy_lag1 ) ); F=F_num/F_den; c_v=finv(1-alpha,y_lag,) t-) x_lagy_lag1 ) ); p=1-fcdf(f,y_lag,) t-) x_lagy_lag1 ) ); 结束

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。