[ywith,xwith,meanny,meannx,meanty,meantx]=demean(y,x,N,T,model);
results=ols(ywith,xwith);
vnames=strvcat('logcit','logp','logy'); % should be changed if x is changed
prt_reg(results,vnames);
tfe=meanty-meantx*results.beta; % including the constant term yme = y - mean(y); en=ones(N,1);
error=y-kron(tfe,en)-x*results.beta; rsqr1 = error'*error; rsqr2 = yme'*yme;
FE_rsqr2 = 1.0 - rsqr1/rsqr2 % r-squared including fixed effects sige=results.sige*((nobs-K)/nobs);
logliktfe=-nobs/2*log(2*pi*sige)-1/(2*sige)*results.resid'*results.resid
LMsarsem_panel(results,W,ywith,xwith); % (Robust) LM tests
4、空间与时间双固定模型 T=30; N=46;
W=normw(W1);
9
y=A(:,3); x=A(:,[4,6]);
xconstant=ones(N*T,1); [nobs K]=size(x); model=3;
[ywith,xwith,meanny,meannx,meanty,meantx]=demean(y,x,N,T,model);
results=ols(ywith,xwith);
vnames=strvcat('logcit','logp','logy'); % should be changed if x is changed
prt_reg(results,vnames) en=ones(N,1); et=ones(T,1);
intercept=mean(y)-mean(x)*results.beta;
sfe=meanny-meannx*results.beta-kron(en,intercept); tfe=meanty-meantx*results.beta-kron(et,intercept); yme = y - mean(y); ent=ones(N*T,1);
error=y-kron(tfe,en)-kron(et,sfe)-x*results.beta-kron(ent,intercept); rsqr1 = error'*error; rsqr2 = yme'*yme;
FE_rsqr2 = 1.0 - rsqr1/rsqr2 % r-squared including fixed effects
10
sige=results.sige*((nobs-K)/nobs);
loglikstfe=-nobs/2*log(2*pi*sige)-1/(2*sige)*results.resid'*results.resid
LMsarsem_panel(results,W,ywith,xwith); % (Robust) LM tests
二、静态面板SAR模型
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=sar_panel_FE(y,[xconstant x],W,T,info); vnames=strvcat('logcit','intercept','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);
2、空间固定效应(Spatial fixed effects)
T=30; N=46; W=normw(W1); y=A(:,[3]); x=A(:,[4,6]); for t=1:T
11
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=sar_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
results=sar_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;
12