六步学会用MATLAB做空间计量回归详细步骤

N=46; W=normw(W1); y=A(:,[3]); x=A(:,[4,6]); for t=1:T

t1=(t-1)*N+1;t2=t*N; wx(t1:t2,:)=W*x(t1:t2,:); end

xconstant=ones(N*T,1); [nobs K]=size(x);

[ywith,xwith,meanny,meannx,meanty,meantx]=demean(y,[x wx],N,T,2); % 2=time dummies info.model=1;

results=sar_panel_RE(ywith,xwith,W,T,info); prt_spnew(results,vnames,1)

spat_model=1;

direct_indirect_effects_estimates(results,W,spat_model); panel_effects_sdm(results,vnames,W)

wald test spatial lag

btemp=results.parm(1:2*K+2); varcov=results.cov(1:2*K+2,1:2*K+2); Rafg=zeros(K,2*K+2); for k=1:K

Rafg(k,K+k)=1; % R(1,3)=0 and R(2,4)=0; end

Wald_spatial_lag=(Rafg*btemp)'*inv(Rafg*varcov*Rafg')*Rafg*btemp prob_spatial_lag= 1-chis_cdf (Wald_spatial_lag, K)

wald test spatial error

R=zeros(K,1); for k=1:K

R(k)=btemp(2*K+1)*btemp(k)+btemp(K+k); % k changed in 1, 7/12/2010 % R(1)=btemp(5)*btemp(1)+btemp(3); % R(2)=btemp(5)*btemp(2)+btemp(4); end

Rafg=zeros(K,2*K+2); for k=1:K

Rafg(k,k) =btemp(2*K+1); % k changed in 1, 7/12/2010

17

Rafg(k,K+k) =1; Rafg(k,2*K+1)=btemp(k);

% Rafg(1,1)=btemp(5);Rafg(1,3)=1;Rafg(1,5)=btemp(1); % Rafg(2,2)=btemp(5);Rafg(2,4)=1;Rafg(2,5)=btemp(2); end

Wald_spatial_error=R'*inv(Rafg*varcov*Rafg')*R prob_spatial_error= 1-chis_cdf (Wald_spatial_error,K)

LR test spatial lag

resultssar=sar_panel_RE(ywith,xwith(:,1:K),W,T,info); LR_spatial_lag=-2*(resultssar.lik-results.lik) prob_spatial_lag=1-chis_cdf (LR_spatial_lag,K)

LR test spatial error

resultssem=sem_panel_RE(ywith,xwith(:,1:K),W,T,info); LR_spatial_error=-2*(resultssem.lik-results.lik) prob_spatial_error=1-chis_cdf (LR_spatial_error,K)

四、静态面板SEM模型

1、无固定效应(No fixed effects)

T=30; N=46; W=normw(W1); y=A(:,[3]); x=A(:,[4,6]); for t=1:T

t1=(t-1)*N+1;t2=t*N; wx(t1:t2,:)=W*x(t1:t2,:); end

xconstant=ones(N*T,1); [nobs K]=size(x); info.lflag=0; info.model=0; info.fe=0;

results=sem_panel_FE(y,[xconstant x],W,T,info); vnames=strvcat('logcit','intercept','logp','logy'); prt_spnew(results,vnames,1)

18

% Print out effects estimates spat_model=0;

direct_indirect_effects_estimates(results,W,spat_model); panel_effects_sar(results,vnames,W);

2、空间固定效应(Spatial fixed effects)

T=30; N=46; W=normw(W1); y=A(:,[3]); x=A(:,[4,6]); for t=1:T

t1=(t-1)*N+1;t2=t*N; wx(t1:t2,:)=W*x(t1:t2,:); end

xconstant=ones(N*T,1); [nobs K]=size(x); info.lflag=0; info.model=1; info.fe=0;

results=sem_panel_FE(y,x,W,T,info); vnames=strvcat('logcit','logp','logy'); prt_spnew(results,vnames,1) % Print out effects estimates spat_model=0;

direct_indirect_effects_estimates(results,W,spat_model); panel_effects_sar(results,vnames,W);

3、时点固定效应(Time period fixed effects)

T=30; N=46; W=normw(W1); y=A(:,[3]); x=A(:,[4,6]); for t=1:T

t1=(t-1)*N+1;t2=t*N; wx(t1:t2,:)=W*x(t1:t2,:); end

xconstant=ones(N*T,1); [nobs K]=size(x);

info.lflag=0; % required for exact results info.model=2;

info.fe=0; % Do not print intercept and fixed effects; use info.fe=1 to turn on

19

results=sem_panel_FE(y,x,W,T,info); vnames=strvcat('logcit','logp','logy'); prt_spnew(results,vnames,1) % Print out effects estimates spat_model=0;

direct_indirect_effects_estimates(results,W,spat_model); panel_effects_sar(results,vnames,W);

4、双固定效应(Spatial and time period fixed effects)

T=30; N=46; W=normw(W1); y=A(:,[3]); x=A(:,[4,6]); for t=1:T

t1=(t-1)*N+1;t2=t*N; wx(t1:t2,:)=W*x(t1:t2,:); end

xconstant=ones(N*T,1); [nobs K]=size(x);

info.lflag=0; % required for exact results info.model=3;

info.fe=0; % Do not print intercept and fixed effects; use info.fe=1 to turn on

results=sem_panel_FE(y,x,W,T,info); vnames=strvcat('logcit','logp','logy'); prt_spnew(results,vnames,1) % Print out effects estimates spat_model=0;

direct_indirect_effects_estimates(results,W,spat_model); panel_effects_sar(results,vnames,W);

五、静态面板SDEM模型

1、无固定效应(No fixed effects)

T=30; N=46; W=normw(W1); y=A(:,[3]); x=A(:,[4,6]); for t=1:T

t1=(t-1)*N+1;t2=t*N;

20

联系客服:779662525#qq.com(#替换为@)