stata命令大全全.docx

上传人:b****2 文档编号:12624096 上传时间:2023-04-21 格式:DOCX 页数:46 大小:31.87KB
下载 相关 举报
stata命令大全全.docx_第1页
第1页 / 共46页
stata命令大全全.docx_第2页
第2页 / 共46页
stata命令大全全.docx_第3页
第3页 / 共46页
stata命令大全全.docx_第4页
第4页 / 共46页
stata命令大全全.docx_第5页
第5页 / 共46页
点击查看更多>>
下载资源
资源描述

stata命令大全全.docx

《stata命令大全全.docx》由会员分享,可在线阅读,更多相关《stata命令大全全.docx(46页珍藏版)》请在冰豆网上搜索。

stata命令大全全.docx

stata命令大全全

*********面板数据计量分析与软件实现*********

说明:

以下do文件相当一部分内容来自于中山大学连玉君STATA教程,感谢他的贡献。

本人做了一定的修改与筛选。

 

*----------面板数据模型

*1.静态面板模型:

FE和RE

*2.模型选择:

FEvsPOLS,REvsPOLS,FEvsRE(pols混合最小二乘估计)

*3.异方差、序列相关和截面相关检验

*4.动态面板模型(DID-GMM,SYS-GMM)

*5.面板随机前沿模型

*6.面板协整分析(FMOLS,DOLS)

***说明:

1-5均用STATA软件实现,6用GAUSS软件实现。

*生产效率分析(尤其指TFP):

数据包络分析(DEA)与随机前沿分析(SFA)

***说明:

DEA由DEAP2.1软件实现,SFA由Frontier4.1实现,尤其后者,侧重于比较C-D与Translog生产函数,一步法与两步法的区别。

常应用于地区经济差异、FDI溢出效应(SpilloversEffect)、工业行业效率状况等。

*空间计量分析:

SLM模型与SEM模型

*说明:

STATA与Matlab结合使用。

常应用于空间溢出效应(R&D)、财政分权、地方政府公共行为等。

 

*---------------------------------

*--------一、常用的数据处理与作图-----------

*---------------------------------

*指定面板格式

xtsetidyear(id为截面名称,year为时间名称)

xtdes/*数据特征*/

xtsumlogyh/*数据统计特征*/

sumlogyh/*数据统计特征*/

*添加标签或更改变量名

labelvarh"人力资本"

renamehhum

 

*排序

sortidyear/*是以STATA面板数据格式出现*/

sortyearid/*是以DEA格式出现*/

 

*删除个别年份或省份

dropifyear<1992

dropifid==2/*注意用==*/

*如何得到连续year或id编号(当完成上述操作时,year或id就不连续,为形成panel格式,需要用egen命令)

egenyear_new=group(year)

xtsetidyear_new

**保留变量或保留观测值

keepinv/*删除变量*/

**或

keepifyear==2000

**排序

sortidyear/*是以STATA面板数据格式出现

sortyearid/*是以DEA格式出现

**长数据和宽数据的转换

*长>>>宽数据

reshapewidelogy,i(id)j(year)

*宽>>>长数据

reshapelogy,i(id)j(year)

 

**追加数据(用于面板数据和时间序列)

xtsetidyear

*或者

xtdes

tsappend,add(5)/表示在每个省份再追加5年,用于面板数据/

tsset

*或者

tsdes

.tsappend,add(8)/表示追加8年,用于时间序列/

*方差分解,比如三个变量Y,X,Z都是面板格式的数据,且满足Y=X+Z,求方差var(Y),协方差Cov(X,Y)和Cov(Z,Y)

bysortyear:

corrYXZ,cov

 

**生产虚拟变量

*生成年份虚拟变量

tabyear,gen(yr)

*生成省份虚拟变量

tabid,gen(dum)

**生成滞后项和差分项

xtsetidyear

genylag=l.y/*产生一阶滞后项),同样可产生二阶滞后项*/

genylag2=L2.y

gendy=D.y/*产生差分项*/

*求出各省2000年以前的openinv的平均增长率

collapse(mean)openinvifyear<2000,by(id)

变量排序,当变量太多,按规律排列。

可用命令

aorder

或者

orderfdiopeninsti

 

*-----------------

*二、静态面板模型

*-----------------

*---------简介-----------

*面板数据的结构(兼具截面资料和时间序列资料的特征)

useproduct.dta,clear

browse

xtsetidyear

xtdes

 

*---------------------------------

*--------固定效应模型-----------

*---------------------------------

*实质上就是在传统的线性回归模型中加入N-1个虚拟变量,

*使得每个截面都有自己的截距项,

*截距项的不同反映了个体的某些不随时间改变的特征

*

*例如:

lny=a_i+b1*lnK+b2*lnL+e_it

*考虑中国29个省份的C-D生产函数

 

*******-------画图------*

*散点图+线性拟合直线

twoway(scatterlogyh)(lfitlogyh)

*散点图+二次拟合曲线

twoway(scatterlogyh)(qfitlogyh)

*散点图+线性拟合直线+置信区间

twoway(scatterlogyh)(lfitlogyh)(lfitcilogyh)

*按不同个体画出散点图和拟合线,可以以做出fevsre的初判断*

twoway(scatterlogyhifid<4)(lfitlogyhifid<4)(lfitlogyhifid==1)(lfitlogyhifid==2)(lfitlogyhifid==3)

*按不同个体画散点图,sobeautiful*

graphtwowayscatterlogyhifid==1||scatterlogyhifid==2,msymbol(Sh)||scatterlogyhifid==3,msymbol(T)||scatterlogyhifid==4,msymbol(d)||,legend(position(11)ring(0)label(1"北京")label(2"天津")label(3"河北")label(4"山西"))

**每个省份logy与h的散点图,并将各个图形合并

twowayscatterlogyh,by(id)ylabel(,format(%3.0f))xlabel(,format(%3.0f))

*每个个体的时间趋势图*

xtlinehifid<11,overlaylegend(on)

 

*一个例子:

中国29个省份的C-D生产函数的估计

tabid,gen(dum)

list

*回归分析

reglogylogklogldum*,

eststorem_ols

xtreglogylogklogl,fe

eststorem_fe

esttablem_olsm_fe,b(%6.3f)star(0.10.050.01)

*Wald检验

testlogk=logl=0

testlogk=logl

*stata的估计方法解析

*目的:

如果截面的个数非常多,那么采用虚拟变量的方式运算量过大

*因此,要寻求合理的方式去除掉个体效应

*因为,我们关注的是x的系数,而非每个截面的截距项

*处理方法:

*

*y_it=u_i+x_it*b+e_it

(1)

*ym_i=u_i+xm_i*b+em_i

(2)组内平均

*ym=um+xm*b+em(3)样本平均

*

(1)-

(2),可得:

*(y_it-ym_i)=(x_it-xm_i)*b+(e_it-em_i)(4)/*withinestimator*/

*(4)+(3),可得:

*(y_it-ym_i+ym)=um+(x_it-xm_i+xm)*b+(e_it-em_i+em)

*可重新表示为:

*Y_it=a_0+X_it*b+E_it

*对该模型执行OLS估计,即可得到b的无偏估计量

**stata后台操作,揭开fe估计的神秘面纱

egeny_meanw=mean(logy),by(id)/*个体内部平均*/

egeny_mean=mean(logy)/*样本平均*/

egenk_meanw=mean(logk),by(id)

egenk_mean=mean(logk)

egenl_meanw=mean(logl),by(id)

egenl_mean=mean(logl)

 

gendyw=logy-y_meanw

gendkw=logk-k_meanw

gendlw=logl-l_meanw

regdywdkwdlw,nocons

eststorem_stata

gendy=logy-y_meanw+y_mean

gendk=logk-k_meanw+k_mean

gendl=logl-l_meanw+l_mean

regdydkdl

eststorem_stata

 

esttablem_*,b(%6.3f)star(0.10.050.01)

 

*解读xtreg,fe的估计结果

xtreglogyhinvgovopen,fe

*--R^2

*y_it=a_0+x_it*b_o+e_it

(1)pooledOLS

*y_it=u_i+x_it*b_w+e_it

(2)withinestimator

*ym_i=a_0+xm_i*b_b+em_i(3)betweenestimator

*

*-->R-sq:

within模型

(2)对应的R2,是一个真正意义上的R2

*-->R-sq:

betweencorr{xm_i*b_w,ym_i}^2

*-->R-sq:

overallcorr{x_it*b_w,y_it}^2

*

*--F(4,373)=855.93检验除常数项外其他解释变量的联合显著性

*

*

*--corr(u_i,Xb)=-0.2347

*

*--sigma_u,sigma_e,rho

*rho=sigma_u^2/(sigma_u^2+sigma_e^2)

dise(sigma_u)^2/(e(sigma_u)^2+e(sigma_e)^2)

*

*个体效应是否显著?

*F(28,373)=338.86H0:

a1=a2=a3=a4=a29

*Prob>F=0.0000表明,固定效应高度显著

*---如何得到调整后的R2,即adj-R2?

ereturnlist

reglogyhinvgovopendum*

*---拟合值和残差

*y_it=u_i+x_it*b+e_it

*predictnewvar,[option]

/*

xbxb,fittedvalues;thedefault

stdpcalculatestandarderrorofthefittedvalues

ueu_i+e_it,thecombinedresidual

xbuxb+u_i,predictionincludingeffect

uu_i,thefixed-orrandom-errorcomponent

ee_it,theoverallerrorcomponent*/

xtreglogylogklogl,fe

predicty_hat

predicta,u

predictres,e

predictcres,ue

genares=a+res

listarescresin1/10

*---------------------------------

*----------随机效应模型---------

*---------------------------------

*y_it=x_it*b+(a_i+u_it)

*=x_it*b+v_it

*基本思想:

将随机干扰项分成两种

*一种是不随时间改变的,即个体效应a_i

*另一种是随时间改变的,即通常意义上的干扰项u_it

*估计方法:

FGLS

*Var(v_it)=sigma_a^2+sigma_u^2

*Cov(v_it,v_is)=sigma_a^2

*Cov(v_it,v_js)=0

*利用PooledOLS,WithinEstimator,BetweenEstimator

*可以估计出sigma_a^2和sigma_u^2,进而采用GLS或FGLS

*Re估计量是Fe估计量和Be估计量的加权平均

*yr_it=y_it-theta*ym_i

*xr_it=x_it-theta*xm_i

*theta=1-sigma_u/sqrt[(T*sigma_a^2+sigma_u^2)]

 

*解读xtreg,re的估计结果

useproduct.dta,clear

xtreglogylogklogl,re

*--R2

*-->R-sq:

withincorr{(x_it-xm_i)*b_r,y_it-ym_i}^2

*-->R-sq:

betweencorr{xm_i*b_r,ym_i}^2

*-->R-sq:

overallcorr{x_it*b_r,y_it}^2

*上述R2都不是真正意义上的R2,因为Re模型采用的是GLS估计。

*

*rho=sigma_u^2/(sigma_u^2+sigma_e^2)

dise(sigma_u)^2/(e(sigma_u)^2+e(sigma_e)^2)

*

*corr(u_i,X)=0(assumed)

*这是随机效应模型的一个最重要,也限制该模型应用的一个重要假设

*然而,采用固定效应模型,我们可以粗略估计出corr(u_i,X)

xtregmarketinveststock,fe

*

*Waldchi2

(2)=10962.50Prob>chi2=0.0000

 

*--------时间效应、模型的筛选和常见问题

*---------目录--------

*7.2.1时间效应(双向固定(随机)效应模型)

*7.2.2模型的筛选

*7.2.3面板数据常见问题

*7.2.4面板数据的转换

*----------------------------------

*------------时间效应--------------

*----------------------------------

*单向固定效应模型

*y_it=u_i+x_it*b+e_it

*双向固定效应模型

*y_it=u_i+f_t+x_it*b+e_it

quitabyear,gen(yr)

dropyr1

xtreglogylogkloglyr*,fe

*随机效应模型中的时间效应

xtreglogylogkloglyr*,fe

*---------------------------------

*-----------模型的筛选----------

*---------------------------------

*固定效应模型还是PooledOLS?

xtreglogylogkloglyr*,fe/*Wald检验*/

quitabid,gen(dum)/*LR检验*/

reglogylogklogl/*POLS*/

eststorem_ols

reglogylogklogldum*,nocons

eststorem_fe

lrtestm_olsm_fe

esttablem_*,b(%6.3f)star(0.10.050.01)

*REvsPooledOLS?

*H0:

Var(u)=0

*方法一:

B-P检验

xtreglogylogklogl,re

xttest0

*FEvsRE?

*y_it=u_i+x_it*b+e_it

*---Hausman检验---

*基本思想:

如果Corr(u_i,x_it)=0,Fe和Re都是一致的,但Re更有效

*如果Corr(u_i,x_it)!

=0,Fe仍然有效,但Re是有偏的

*基本步骤

***情形1:

huasman为正数

xtreglogylogklogl,fe

eststorem_fe

xtreglogylogklogl,re

eststorem_re

hausmanm_fem_re

***情形2:

quixtreglogyhinvgovopen,fe

eststorefe

quixtreglogyhinvgovopen,re

eststorere

hausmanfere

*Hausman检验值为负怎么办?

*通常是因为RE模型的基本假设Corr(x,u_i)=0无法得到满足

*检验过程中两个模型的方差-协方差矩阵都采用Fe模型的

hausmanfere,sigmaless

*两个模型的方差-协方差矩阵都采用Re模型的

hausmanfere,sigmamore

 

*==为何有些变量会被drop掉?

usenlswork.dta,clear

tssetidcodeyear

xtregln_wagehourstenurettl_exp,fe/*正常执行*/

*产生种族虚拟变量

tabrace,gen(dum_race)

xtregln_wagehourstenurettl_expdum_race2dum_race3,fe

*为何dum_race2和dum_race3会被dropped?

*固定效应模型的设定:

y_it=u_i+x_it*b+e_it

(1)

*由于个体效应u_i不随时间改变,

*因此若x_it包含了任何不随时间改变的变量,

*都会与u_i构成多重共线性,Stata会自动删除之。

 

*******异方差、序列相关和截面相关问题

*----------------简介-------------

*y_it=x_it*b+u_i+e_it

*

*由于面板数据同时兼顾了截面数据和时间序列的特征,

*所以异方差和序列相关必然会存在于面板数据中;

*同时,由于面板数据中每个截面(公司、个人、国家、地区)之间还可能存在内在的联系,

*所以,截面相关性也是一个需要考虑的问题。

*

*此前的分析依赖三个假设条件:

*

(1)Var[e_it]=sigma^2同方差假设

*

(2)Corr[e_it,e_it-s]=0序列无关假设

*(3)Corr[e_it,e_jt]=0截面不相关假设

*

*当这三个假设无法得到满足时,便分别出现异方差、序列相关和截面相关问题;

*我们一方面要采用各种方法来检验这些假设是否得到了满足;

*另一方面,也要在这些假设无法满足时寻求合理的估计方法。

 

*----------------假设检验-------------

*==组间异方差检验(截面数据的特征)

*Var(e_i)=sigma_i^2

*Fe模型

xtreglogylogklogl,fe

xttest3

*Re模型

*Re本身已经较大程度的考虑了异方差问题,主要体现在sigma_u^2上

*==序列相关检验

*Fe模型

*xtserialWooldridge(2002),若无序列相关,则一阶差分后残差相关系数应为-0.5

xtseriallogylogklogl

xtseriallogylogklogl,output

*Re模型

xtreglogylogklogl,re

xttest1/*提供多个统计检验量*/

*==截面相关检验

*xttest2命令H0:

所有截面残差的相关系数都相等

xtreglogylogklogl,fe

xttest2

*由于检验过程中执行了SUE估计,所以要求T>N

xtreglogylogkloglifid<6,fe

xttest2

*xtcsd命令(提供了三种检验方法)

xtreglogylogklogl,fe

xtcsd,pesaran/*Pesaran(2004)*/

xtcsd,friedman/*Friedman(1937)*/

xtreglogylogklogl,re

xtcsd,pesaran

*-----------------估计方法---------------------

*==

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 高考

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1