Stata学习笔记

Stata学习笔记
Stata学习笔记

1、横截面数据:多个经济个体的变量在同一时间点上的取值,如2012年中国各省的GDP

2、时间数列数据:指的是某个经济个体的变量在不同时点上的取值,如1978-2012年山东

省每年的GDP

3、面板数据:多个经济个体的变量在不同时点上的取值,如1978-2012年中国各省的GDP

小样本OLS(最小二乘法):单一方程线性回归最常见方法

条件:解释变量与扰动项正交、扰动项无自相关、同方差。

拟合优度:衡量线性回归模型对样本数据的拟合程度(R2),越高说明模型拟合程度越好。单系数T检验:对回归方程扰动项的具体概率进行假设

显著性水平进行检验

F检验:整个回归方程是否显著

STATA操作简介:

如果数据中包含1949-10-01或1949/10/01的时间变量,导入stata后可能会被视为字符串,因此对于日度数据,可以使用命令gen newvar=date(varname,YMD),将其转换为整数日期变量,其中YMD说明原始数据的格式为年月日,如果原始数据的格式为月日年则使用MDY;对于月度数据则gen newvar=monthly(varname,YM)。

.describe:数据的概貌 .drop keep:删除和保留

.su:统计特征 Pwcorr:变量之间相关系数

Star(.05):5%显著性水平 gen:产生

g intc=log(tc):取自然对数. reg:OLS回归

.Vce:协方差矩阵 reg。。。,noc表示在进行回归时不要常数项

大样本OLS:只要求解释变量与同期的扰动项正交即可Robust:稳健标准误,如果存在异方差,则应使用稳健标准误

最大似然估计法:如果回归方程存在非线性,则使用最大似

然估计法(MLE)或非线性最小二乘法(NLS)

三类在大样本下渐进等价的统计检验:Wald test LR(似然比检验) LM

操作步骤如下:sysuse auto(调用数据集)

Hist mpg,normal(画变量mpg的直方图,并与正态密度比较)

直方图显示,变量mpg的分布于正态分布有一定差距。

变量可以取对数解决非正态分布的问题。

异方差与GLS(广义最小二乘法)

异方差的检验:看残差图、怀特检验(white test)、BP检验(Breusch and Pagan)

异方差的处理:1、OLS+稳健标准误(最好的)

2、广义最小二乘法(GLS)

3、加权最小二乘法(WLS)

实例操作:

1、使用数据:use ,clear

2、reg intc inq inpl inpk inpf(进行回归)

3、

4、画残差图:rvfplot

上图可以发现当拟合值较小时,扰动项方差较大,继续考察残差与解释变量inq的散点图:rvpplot inq,结果与上图几乎一致,可能存在异方差,即扰动项的方差随着观测值而变。

5、完成回归后,进行怀特检验:estat imtest,white

P值显著,认为存在异方差

6、完成回归后,进行BP检验:estat hettest,iid estat hottest,rhs iid estat hottest inq,iid

三种形式的检验都强烈拒绝同方差的原假设,存在异方差(这里只放一个形式的检验结果)7、处理异方差

自相关:扰动项之间自相关

自相关的例子:1、时间序列数据中通常具有某种连续性和持久性,如相邻两年的GDP增长率;2、截面数据中相邻的观测单位之间可能存在溢出效应,如相邻地区的农业产量收到类似天气变化的影响;3、对数据的人为处理如数据中包含移动平均数等;4、如果模型设定中遗漏了某个自相关的解释变量并被纳入到扰动项中,则会引起扰动项的自相关。

自相关的检验:1、画图(不推荐)2、BG检验estat bgodfrey 3、BOX-Pierce Q检验 4、DW检验 estat dwatson. 检验都要在OLS做完后才能做。

自相关的处理:1、使用OLS+异方差自相关稳健的标准误;2、OLS+聚类稳健的标准误;3、使用可行广义最小二乘法(FGLS);4、修改模型设定

自相关处理实例:1、使用数据 icecream 然后进行回归

BG检验

显著拒绝了原假设无自相关,则认为存在自相关

Q检验(略)、DW检验如下

DW= 距离2很远可以认为存在自相关。

由以上的检验可以看出扰动项之间存在自相关,因此OLS提供的标准误是不准确的,应使用异方差自相关稳健标准误,由于样本为30个,n四分之一=,故取NEWey-West估计量的滞后值为P=3,结果如下:

上图显示标准误与OLS标准误无多大区别,因此将滞后阶数增加为6,

从上图可以看到无论截断参数是3还是6,标准误都变化不大,比较稳健。

此外,前面提到自相关存在可能是因为模型设定不正确,因此考虑在解释变量中加入temp的滞后值,然后再进行OLS回归:

然后使用BG检验是否存在自相关:

结果显示无自相关,而后DW值也改进为,因此修改模型后扰动项基本不再存在自相关。模型设定与数据问题

遗漏变量:被解释变量可能被加入到扰动项中

解决方式:加入尽可能多的控制变量;使用代理变量;工具变量法;使用面板数据;随机试验或自然实验。

其中代理变量应满足两个条件:多余性,仅通过影响遗漏变量而作用于被解释变量;剩余独立性,遗漏变量中不受代理变量影响的剩余部分与所有解释变量均不相关。

多重共线性:某一解释变量可以由其他解释变量线性表出,即存在多重共线性。

检测:先回归,然后estat vif VIF低于10即不存在多重共线性。

工具变量,2SLS与GMM

工具变量的适用条件:OLS成立的最重要条件是解释变量与扰动项不相关,如出现相关可以使用工具变量法来解决。其中在计量经济学中,将所有与扰动项相关的解释变量成为内生变量,一个有效的工具变量应满足一下两个条件:1、工具变量与内生解释变量相关;2、工具变量与扰动项不相关。

过程:传统的工具变量法一般通过二阶段最小二乘法(2SLS或TSLS)来实现:1、用内生解释变量对工具变量进行回归,得到拟合值Pt(Pt实际上是内生变量中的外生部分,而另一部分是与扰动项相关);2、用被解释变量对第一阶段的拟合值Pt进行回归。

工具变量的检测:1、不可识别检验;2、弱工具变量检验;3、过度识别检验(estat overid)。

豪斯曼检验:原假设为所有解释变量均为外生变量,若拒绝假设的话应该使用工具变量

法,若接受的话使用OLS。

豪斯曼过程:reg X1 x2

Estimates store ols(存储OLS的结果)

Ivregress 2sls y x1(x2=z1 z2)(假设怀疑X2为内生变量)

Estimates store iv(存储2SLS结果)

Hausman iv ols,constant sigmamore(根据存储的结果进行豪斯曼检验)

若存在异方差的问题,则可以使用杜宾-吴-豪斯曼检验。它在异方差的情况下也适用。

在球形扰动项的假定下,2SLS最有效,但如果扰动项存在异方差或自相关,则存在GMM 广义矩估计这一更有效的方法:首先使用2SLS得到残差,然后GMM,但是在实际操作中使用迭代法。

GMM的命令:

ivregress gmm y x1(x2=z1 z2) 两步最优GMM

ivregress gmm y x1 (x2=z1 z2),igmm 迭代GMM

estat overid 过度识别检验

工具变量法的STATA命令和实例:

Use ,clear

Sum

然后考察智商和受教育年限的相关关系(本文研究的是工资与受教育年限的关系)

具有较强的正相关关系。

然后作为一个参照系,进行OLS回归并使用稳健标准误。

教育投资率%,显然过高,可能是遗漏了变量能力,使得能力对工资的贡献也被纳入教育的贡献。

因此使用iq作为能力的代理变量,再进行OLS回归,可以发现加入iq作为能力的代理变量后,教育投资回报率降低了一些,但还是过高。(如下图)

使用iq来度量能力存在测量误差,因此iq为内生变量,考虑使用med kww mrt age作为iq的工具变量,进行2SLS回归 ,并使用稳健标准误。

受教育年限回报上升,而iq竟然是负相关,因此不可信,使用工具变量法需要验证其工具变量的有效性因此进行过度识别来检验所有工具变量是否外生。

上图显示有些工具变量不合格,与扰动项相关。怀疑mrt和age不满足外生性,因此仅适用med和kww作为iq的工具变量,再次进行2SLS回归,同时显示第一阶段的回归结果。

如上图,第一部分回归是使用内生解释变量对工具变量进行回归,第二部分用被解释变量对第一阶段回归的拟合值进行回归。

上图中教育回报率较为合理,而且iq系数也为整数,再次进行过度识别检验。

结果没有拒绝外生的原假设。

接下来继续考察作为工具变量的第二个条件,即工具变量与内生变量的相关性,由第一阶段的回归看出,med和kww对iq有较好的解释力,但为稳健起见,还是使用对弱工具变量更不敏感的有限信息最大似然法(LIML)。

以上结果与2SLS非常接近,侧面验证了不存在弱工具变量。

还有,使用工具变量法的前提是存在内生解释变量,因此进行豪斯曼检验。

结果显示拒绝了原假设,因此存在iq为内生变量,又因为传统的豪斯曼检验在异方差的情况下不成立,下面进行异方差稳健的DWH检验:

DWH的P值小于,故可以认为iq为内生解释变量。

另外如果存在异方差,则GMM比2SLS更有效,因此进行最优GMM估计:

上图显示两步最优GMM与2SLS很接近,再进行过度识别检验

结果接受原假设,说明所有工具变量外生。

然后再做迭代GMM:下图显示与两步GMM系数估计值相差不大。

如果希望将以上各估计值级标准误弄在同一张表中:

如果希望用一颗星表示10%显著性水平等等:

如果想像论文一样显示,则如下表:se表示在括弧中显示标准误差,p表示显示P值,

r2表示显示R的平方,mtitle显示使用模型名字,

二值选择模型

离散选择模型、定性反应模型或被解释变量取非负整数时,都不适宜使用OLS回归。

1、二值选择模型:只有两种选择,是否。

Probit y x1 x2 x3,r (probit模型)

Logit y x1 x2 x3,or vce(cluster clustvar)(logit模型)

其中,r代表使用稳健标准误,or显示几率比而不是系数,vce表示使用以clustvar 为聚类变量的聚类稳健标准误。

Stata举例:美国妇女就业与否的二值选择模型。

然后使用logit进行估计:

结果显示所有系数的联合显著性很高,继续使用稳健标准误进行logit回归:

对比以上两个表格显示标准误相差不大,因此不用担心模型设定问题。

二值选择模型中的异方差问题:hetprob y x1 x2 x3,het(varlist),如果接受原假设则为同方差。

此外,二值选择模型中一般都没有扰动项的存在。

二值选择模型中的异方差问题可以进行似然比检验(LR):hetprob y x1 x2 x3,het(varlist)(这是在异方差情况下进行Probit估计的stata命令,het(varlist)制定对扰动项方差有影响的所有变量,如het(age married children)),LR检验原假设为同方差。

多值选择模型

个体面临的选择有时是多值的,因此可能需要使用到多项probit或多项logit,或者在有某项条件时需要用到条件logit,还有在不随方案而变的多项logit模型和解释变量随方案而变的条件logit模型混合的logit模型。

举例来说,问卷调查将受访者职业分为五类(OCC),解释变量为是否白人、受教育年限、工龄,解释变量都依赖于个体而不依赖于方案,因此使用多项logit或多项probit回归:

进行多项logit回归:

上述结果说明白人更不可能选择服务业或工匠;是否白人对选择蓝领或白领没显著影响。。。

排序与计数模型

1、泊松回归:被解释变量只能取非负整数,即0,1,2….,这时常用泊松回归。

Poisson y x1 x2 x3,r irr

Poisson y x1 x2 x3,r exposure(x1)

Poisson y x1 x2 x3,r offset(x1)

其中,r为稳健标准误,irr为显示发生率比,exposure表示把inx1作为解释变量并使其系数为1,offset表示将x1作为解释变量并使其系数为1.

2、负二项回归:泊松回归的局限是泊松分布的期望与方差一定相等,但如果被解释变量的

方差明显大于期望,即存在过度分散,这时候可以使用负二项回归。

Nbreg y x1 x2 x3,r exposure(x1)

Nbreg y x1 x2 x3,r dispersion(constant) offset(x1)

其中dispersion(constant)表示使用NB1模型。

3、零膨胀泊松回归与负二项回归:如计数数据中包含大量0值,则可以使用零膨胀泊松回

归或零膨胀负二项回归。如果vuong统计量很大为正数,则应该使用零膨胀泊松回归,如果统计量很小为负数,则使用零膨胀负二项回归。

Zip y x1 x2 x3,inflate(varlist) vuong(零膨胀泊松回归)

Zinb y x1 x2 x3,inflate(varlist) vuong(零膨胀负二项回归),其中inflate(varlist)不可缺少列出所有变量。

如果研究者只关注参数的估计值,则泊松回归。

Stata举例:

被解释变量narr86(1986年被逮捕的次数),被解释变量为计数数据,尽管如此,还是使用OLS回归进行观察:

R的平方为,但大多数解释变量都显著,下面进行泊松回归,并使用稳健标准误:

(nolog)表示不显示迭代记录。上俩图可以看出虽然OLS和泊松的系数相差很大,但两者并不具有可比性,为方便比较,计算泊松回归的平均边际效应:

可以看出,泊松模型的平均边际效应与OLS的回归系数很接近,为便于解释系数,下面计算发生率比:

可以看出黑人被逮捕次数比白人多%。此外使用泊松回归的前提之一是被解释变量的期望与方差相等,因此考察被解释变量的统计特征:

结果显示样本方差几乎是样本均值的两倍,为放松此假定进行负二项回归(NB2):

上图中alpha的置信区间为,因此可在5%的显著性水平下拒绝过度分散参数alpha=0的原假设,也因此应使用负二项回归。

短面板

面板数据指的是一段时间内跟踪同一组个体数据,它既有横截面的维度又有时间维度。其中,如果每个时期在样本中的个体完全一样,则称为平衡面板数据,反之为非平衡面板数据。固定效应还是随机效应:当不存在异方差的时候,使用hausman检验,如果假设成立,则使

用随机效应,如果拒绝假设,则使用固定效应。

而当存在异方差时候,使用辅助回归然后聚类稳健标准误来检验,

如果接受假设,则使用随机效应模型。

短面板的stata命令及实例:

Xtset panelvar timevar(xt说明数据为面板数据,panelvar取值必须为整数且不重复,

相当于进行编号,timevar为时间变量,假如panelvar为字串符,

如国家,则使用encode country,gen(cntry))

Xtdes 显示面板的结构,是否为平衡面板

Xtsum 显示组内,组间与整体的统计指标

Xttab varname 显示组内,组间与整体的分布频率,tab指的是tabulate

交通死亡率:首先设定state与year为面板变量及时间变量。

上图显示这是一个平衡的面板数据(每个时期在样本中的个体完全一样),然后显示数据集

的结构:

n=48,T=7,n大而T小,说明这是一个短面板,然后作为参照系,首先进行混合回归:

reg y x1 x2 x3,vce(cluster id)其中id用来确定每个个体的变量,vce(cluster state)

表示使用以state为聚类变量的聚类稳健标准误

由于每个州的情况不一样,可能存在不随时间变化的遗漏变量,故考虑使用固定效应:Xtreg y x1 x2 x3,fe r

LSDV法的stata命令为:reg y x1 x2 x3 ,r

其中r为使用聚类稳健标准误,vce(cluster id)也能达到这种效果,id表示用来确定个

体的变量,表示根据变量id而生成的虚拟变量。

首先使用组内估计量:

在选择随机还是固定时:使用hausman检验:xtreg y x1 x2 x3,fe(固定效应估计)

Estimates store fe(存贮)

Xtreg y x1 x2 x3,re(随机效应估计)

Estimates store re(存储)

Hausman fe re,constant sigmamore(豪斯曼检验)

长面板与动态面板

在长面板中,T可能会比较大,因此可能存在组间异方差,组内自相关或组间同期相关的问题,主要有两种处理方式:1、使用OLS即LSDV来估计系数,只对标准误差进行矫正(即

面板矫正误差);3、对异方差或自相关的具体形式进行假设,然后使用可行广义最小二乘法FGLS进行估计。

1、矫正标准误差

即使扰动项存在组间异方差或组间同期相关等,LSDV也依然有效,此时,只要使用

组间异方差、组间同期方差稳健的标准误差即可,即面板校正标准误差PCSE:

Xtpvse y x1 x2 x3,hetonly,其中hetonly表示存在组间异方差,但不存在组间

同期相关;

举例:inc为被解释变量,由于n=10,T=30,因此是一个长面板。为了考虑时间效

应,生成时间趋势变量t,然后用LSDV法估计双向固定效应模型(作为对比先不考

虑异方差等)

下图可以看出有些州虚拟变量显著,即存在固定效应,而时间效应则不太显著,p

值为.然后下表未考虑组间异方差等,因此使用面板校正标准误进行估计(下下图)

命令xtpcse与命令reg的估计系数完全一样,只是标准误不同。

2、仅解决组内自相关的FGLS:xtpcse y x1 x2,corr(ar1)。无论是使用prais-winsten

还是OLS方法都在组间异方差与组间同期相关的情况下成立。

继续使用以上数据,考虑组内自相关的情形,但要求各组的自回归系数相同

3、组间异方差的检验:如果拒绝假设,则存在组间异方差。

Ssc install xttest3(下载安装命令)

Quietly xtreg lnc lnp t,r fe

xttest3

Quietly xtgls lnc lnp t

Xttest3

4、组内自相关检验:如果拒绝假设,则存在组内自相关

Net install st0039

Xtserial y x1 x2 x3,output

5、组间同期相关的检验:如果拒绝假设,即存在组间同期相关。

Ssc install xtest2

Quietly xreg inc inp inpmin iny t,fe

Xttest2

非线性面板

对于面板数据,如果被解释变量为虚拟变量、计数变量、受限变量等,则为非线性面板。1、如果被解释变量为虚拟变量,则称为面板二值选择模型。一般采用混合、固定或随机效

应模型。

混合回归:如果不存在个体效应,则使用混合回归

Probit y x1 x2 x3,vce(cluster id) 混合probit回归

Logit y x1 x2 x3,vce(cluster id) 混合logit回归其中Id为确定面板单位的变量

随即效应模型:

Xtprobit x1 x2 x3,

Xtlogit y x1 x2 x3,再次输出结果中,包含了对原假设的LR检验结果,如拒绝则使用随机,接受则使用混合

固定效应模型:xtlogit y x1 x2 x3,fe

Stata实例:被解释变量为是否起义uprising,由于面板probit无固定效应模型,因此使用面板logit模型。

首先进行固定效应面板logit估计:

如下图所示,第二行有一个朝代未发生企业,因此在估计固定效应时应被去掉。

然后进行混合回归logit模型,为保持与固定效应样本一样,在混合回归中也去掉了dyn=2的朝代:

为了在固定和混合进行选择,使用豪斯曼检验,但豪斯曼不允许在混合回归使用选择项vce(cluester dyn),因此重新进行混合回归:

quietly logit uprising age pop temp sfamine sfamine1 sfamine2 sfamine3 relief relief1 relief2 relief3 if dyn~=2, nolog(不显示结果)

结果拒绝假设,因此使用固定效应模型。(pooled表示将回归放在一起做)

然后下面进行随机效应logit估计

从上表最后一行的值LR检验拒绝假设,因此应使用面板随机效应模型,不宜进行混合回归。

最后,为了在固定效应与随机效应模型之间进行选择,再次进行豪斯曼检验:

结果拒绝假设,因此应使用固定效应模型。

2、面板泊松回归:被解释变量为计数变量时,非负整数。

其中,混合泊松回归:poisson y x1 x2 x3,vce(cluster id)irr(irr为回报发生率比)面板泊松回归:xtpoisson y x1 x2 x3,fe normal irr(自由选择fe和re)面板负二项回归:泊松回归的缺陷是如果方差与期望之间差距过大即存在过度分散,既可以采用负二项回归。

混合负二项回归:nbreg y x1 x2 x3,vce(cluster id)

面板负二项回归:xtnbreg y x1 x2 x3,fe irr(自由选择fe和re)Stata实例:被解释变量mdu为个体看医生的次数。

面板变量为id,时间跨度为5年,为非平衡面板。

然后进行混合泊松回归,并使用聚类稳健标准误

然后进行随机效应的面板泊松回归,

上图最后LR检验拒绝原假设,则拒绝混合泊松模型,认为应使用随机效应的面板泊松模型。

然后再进行固定效应的面板泊松回归:

上图显示有265组数据由于仅有一期观测值而被去掉,另有666组数据由于取值全为0也被去掉,此外固定效应模型无法识别不随时间变化的变量系数(lcoins,ndisease,

female)故这些变量也被去掉,可以看出,聚类稳健标准误大约是普通标准误的2倍,导致所有变量系数均不显著。

然后初步考察是否存在过量分散:

可以看出被解释变量mdu的方差是平均值的七倍多,可能存在过度分散,因此负二项回归可能更有效率。

因此进行混合负二项回归,并使用聚类稳健标准误:

最后一行显示过度分散系数a的置信区间拒绝了假设,即存在过度分散,使用负二项回归可以提高效率。

进行随机效应的面板负二项回归,并使用自助标准误

最后一行LR拒绝了混合负二项回归的原假设,认为应使用随机效应的面板负二项回归。然后使用豪斯曼检验在固定效应与随机效应的负二项回归之间进行选择:

豪斯曼检验拒绝随机效应负二项回归,因此使用固定效应负二项回归。

STATA最常用命令大全

stata save命令 FileSave As 例1. 表1.为某一降压药临床试验数据,试从键盘输入Stata,并保存为Stata格式文件。 STATA数据库的维护 排序 SORT 变量名1 变量名2 …… 变量更名 rename 原变量名新变量名 STATA数据库的维护 删除变量或记录 drop x1 x2 /* 删除变量x1和x2 drop x1-x5 /* 删除数据库中介于x1和x5间的所有变量(包括x1和x5) drop if x<0 /* 删去x1<0的所有记录 drop in 10/12 /* 删去第10~12个记录 drop if x==. /* 删去x为缺失值的所有记录 drop if x==.|y==. /* 删去x或y之一为缺失值的所有记录 drop if x==.&y==. /* 删去x和y同时为缺失值的所有记录 drop _all /* 删掉数据库中所有变量和数据 STATA的变量赋值 用generate产生新变量 generate 新变量=表达式 generate bh=_n /* 将数据库的内部编号赋给变量bh。 generate group=int((_n-1)/5)+1 /* 按当前数据库的顺序,依次产生5个1,5个2,5个3……。直到数据库结束。 generate block=mod(_n,6) /* 按当前数据库的顺序,依次产生1,2,3,4,5,0。generate y=log(x) if x>0 /* 产生新变量y,其值为所有x>0的对数值log(x),当x<=0时,用缺失值代替。 egen产生新变量 set obs 12 egen a=seq() /*产生1到N的自然数 egen b=seq(),b(3) /*产生一个序列,每个元素重复#次 egen c=seq(),to(4) /*产生多个序列,每个序列从1到# egen d=seq(),f(4)t(6) /*产生多个序列,每个序列从#1到#2 encode 字符变量名,gen(新数值变量名) 作用:将字符型变量转化为数值变量。 STATA数据库的维护 保留变量或记录 keep in 10/20 /* 保留第10~20个记录,其余记录删除 keep x1-x5 /* 保留数据库中介于x1和x5间的所有变量(包括x1和x5),其余变量删除keep if x>0 /* 保留x>0的所有记录,其余记录删除

STATA面板数据模型操作命令要点

STATA 面板数据模型估计命令一览表 一、静态面板数据的STATA 处理命令 εαβit ++=x y it i it 固定效应模型 μβit +=x y it it ε αμit +=it it 随机效应模型 (一)数据处理 输入数据 ●tsset code year 该命令是将数据定义为“面板”形式 ●xtdes 该命令是了解面板数据结构 ●summarize sq cpi unem g se5 ln 各变量的描述性统计(统计分析) ●gen lag_y=L.y /////// 产生一个滞后一期的新变量

gen F_y=F.y /////// 产生一个超前项的新变量 gen D_y=D.y /////// 产生一个一阶差分的新变量 gen D2_y=D2.y /////// 产生一个二阶差分的新变量 (二)模型的筛选和检验 ●1、检验个体效应(混合效应还是固定效应)(原假设:使用OLS混合模型)●xtreg sq cpi unem g se5 ln,fe 对于固定效应模型而言,回归结果中最后一行汇报的F统计量便在于检验所有的个体效应整体上显著。在我们这个例子中发现F统计量的概率为0.0000,检验结果表明固定效应模型优于混合OLS模型。 ●2、检验时间效应(混合效应还是随机效应)(检验方法:LM统计量) (原假设:使用OLS混合模型) ●qui xtreg sq cpi unem g se5 ln,re (加上“qui”之后第一幅图将不会呈现) xttest0

可以看出,LM检验得到的P值为0.0000,表明随机效应非常显著。可见,随机效应模型也优于混合OLS模型。 ●3、检验固定效应模型or随机效应模型(检验方法:Hausman检验) 原假设:使用随机效应模型(个体效应与解释变量无关) 通过上面分析,可以发现当模型加入了个体效应的时候,将显著优于截距项为常数假设条件下的混合OLS模型。但是无法明确区分FE or RE的优劣,这需要进行接下来的检验,如下: Step1:估计固定效应模型,存储估计结果 Step2:估计随机效应模型,存储估计结果 Step3:进行Hausman检验 ●qui xtreg sq cpi unem g se5 ln,fe est store fe qui xtreg sq cpi unem g se5 ln,re est store re hausman fe (或者更优的是hausman fe,sigmamore/ sigmaless) 可以看出,hausman检验的P值为0.0000,拒绝了原假设,认为随机效应模型的基本假设得不到满足。此时,需要采用工具变量法和是使用固定效应模型。

stata命令总结

stata11常用命令 注:JB统计量对应的p大于0.05,则表明非正态,这点跟sktest和swilk 检验刚好相反; dta为数据文件; gph为图文件; do为程序文件; 注意stata要区别大小写; 不得用作用户变量名: _all _n _N _skip _b _coef _cons _pi _pred _rc _weight double float long int in if using with 命令: 读入数据一种方式 input x y 1 4 2 5.5 3 6.2 4 7.7 5 8.5 end su/summarise/sum x 或 su/summarise/sum x,d 对分组的描述: sort group by group:su x %%%%% tabstat economy,stats(max) %返回变量economy的最大值 %%stats括号里可以是:mean,count(非缺失观测值个数),sum(总和),max,min,range, %% sd,var,cv(变易系数=标准差/均值),skewness,kurtosis,median,p1(1%分位 %% 数,类似地有p10, p25, p50, p75, p95, p99),iqr(interquantile range = p75 – p25) _all %描述全部 _N 数据库中观察值的总个数。 _n 当前观察值的位置。 _pi 圆周率π的数值。 list gen/generate %产生数列 egen wagemax=max(wage) clear use by(分组变量)

最新Stata软件基本操作和数据分析入门

Stata软件基本操作和数据分析入门 第一讲Stata操作入门 张文彤赵耐青 第一节概况 Stata最初由美国计算机资源中心(Computer Resource Center)研制,现在为Stata公司的产品,其最新版本为7.0版。它操作灵活、简单、易学易用,是一个非常有特色的统计分析软件,现在已越来越受到人们的重视和欢迎,并且和SAS、SPSS一起,被称为新的三大权威统计软件。 Stata最为突出的特点是短小精悍、功能强大,其最新的7.0版整个系统只有10M左右,但已经包含了全部的统计分析、数据管理和绘图等功能,尤其是他的统计分析功能极为全面,比起1G以上大小的SAS系统也毫不逊色。另外,由于Stata在分析时是将数据全部读入内存,在计算全部完成后才和磁盘交换数据,因此运算速度极快。 由于Stata的用户群始终定位于专业统计分析人员,因此他的操作方式也别具一格,在Windows席卷天下的时代,他一直坚持使用命令行/程序操作方式,拒不推出菜单操作系统。但是,Stata的命令语句极为简洁明快,而且在统计分析命令的设置上又非常有条理,它将相同类型的统计模型均归在同一个命令族下,而不同命令族又可以使用相同功能的选项,这使得用户学习时极易上手。更为令人叹服的是,Stata语句在简洁的同时又拥有着极高的灵活性,用户可以充分发挥自己的聪明才智,熟练应用各种技巧,真正做到随心所欲。

除了操作方式简洁外,Stata的用户接口在其他方面也做得非常简洁,数据格式简单,分析结果输出简洁明快,易于阅读,这一切都使得Stata成为非常适合于进行统计教学的统计软件。 Stata的另一个特点是他的许多高级统计模块均是编程人员用其宏语言写成的程序文件(ADO文件),这些文件可以自行修改、添加和下载。用户可随时到Stata网站寻找并下载最新的升级文件。事实上,Stata的这一特点使得他始终处于统计分析方法发展的最前沿,用户几乎总是能很快找到最新统计算法的Stata程序版本,而这也使得Stata自身成了几大统计软件中升级最多、最频繁的一个。 由于以上特点,Stata已经在科研、教育领域得到了广泛应用,WHO的研究人员现在也把Stata作为主要的统计分析工作软件。 第二节Stata操作入门 一、Stata的界面 图1即为Stata 7.0启动后的界面,除了Windows版本的软件都有的菜单栏、工具栏,状态栏等外,Stata的界面主要是由四个窗口构成,分述如下: 1.结果窗口:位于界面右上部,软件运行中的所有信息,如所执行的命令、执行结果和出错信息等均在这里列出。窗口中会使用不同的颜色区分不同的文本,如白色表示命令,红色表示错误信息。 2.命令窗口:位于结果窗口下方,相当于DOS软件中的命令行,此处用于键入需要执行的命令,回车后即开始执行,相应的结果则会在结果窗口中显示出来。

stata常用命令

用help命令熟悉以下命令的功能: cd:(Change directory)改变stata的工作路径 用法:(cd changes the current working directory to the specified drive and directory.) ●指定全路径:cd e:\ ●指定相对路径(如果当前路径已经指向e:\那么下面命令将达到和上面全路 径命令同样效果): ●cd .. 返回上一级目录 dir:(Display filenames)显示当前目录下的文件信息 用法:(list the names of files in the specified,the names of the commands come from names popular on Unix and Windows,filespec may be any valid Mac, Unix, or Windows file path or file)工作列表文件中指定的名称目录,命令的名称来自名字流行的Unix和Windows文件规范可以是任何有效的Mac,Unix或Windows文件路径或文件。 . dir, w . dir *.dta . dir \mydata\*.dta List:(List values of variables)列出指定变量的取值 用法:(st displays the values of variables. If no varlist is specified, the values of all the variables are displayed)列表显示变量的值。如果没有指定varlist,所有的值显示的变量。list [varlist] [if] [in] [, options] . list in 1/10 . list mpg weight . list mpg weight in 1/20 . list if mpg>20 . list mpg weight if mpg>20 . list mpg weight if mpg>20 in 1/10 Describe:(Describe data in memory or in file)描述内存或者文件中的数 据(样本数、变量类型等信息) 用法:(describe produces a summary of the dataset in memory or of the data stored in a Stata-format dataset. For a compact listing of variable names, use describe, simple.) ●描述内存数据: ●描述文件数据:describe [varlist] using filename [, file_options] Use:(Load Stata dataset)调用数据,打开数据文件(以dta结尾)文 件名+.dta 数据读入stata 用法:(use loads into memory a Stata-format dataset previously saved by save. If filename is specified without an extension, .dta is assumed. If your

Stata命令整理教学内容

Stata 命令语句格式: [by varlist:] command [varlist] [=exp] [if exp] [in range] [weight] [, options] 1、[by varlist:] *如果需要分别知道国产车和进口车的价格和重量,可以采用分类操作来求得, sort foreign //按国产车和进口车排序 . by foreign: sum price weight *更简略的方式是把两个命令用一个组合命令来写。 . by foreign, sort: sum price weight 如果不想从小到大排序,而是从大到小排序,其命令为gsort。 . sort - price //按价格从高到低排序 . sort foreign -price /*先把国产车都排在前,进口车排在后面,然后在国产车内再按价格从大小到排序,在进口车内部,也按从大到小排序*/ 2、[=exp]赋值运算 . gen nprice=price+10 //生成新变量nprice,其值为price+10 /*上面的命令generate(略写为gen) 生成一个新的变量,新变量的变量名为 nprice,新的价格在原价格的基础上均增加了10 元。 . replace nprice=nprice-10 /*命令replace 则直接改变原变量的赋值,nprice 调减后与price 变量取值相等*/ 3、[if exp]条件表达式 . list make price if foreign==0 *只查看价格超过1 万元的进口车(同时满足两个条件),则 . list make price if foreign==1 & price>10000 *查看价格超过1 万元或者进口车(两个条件任满足一个) . list make price if foreign==1 | price>10000 4、[in range]范围筛选 sum price in 1/5 注意“1/5”中,斜杠不是除号,而是从1 到 5 的意思,即1,2,3,4,5。 如果要计算前10 台车中的国产车的平均价格,则可将范围和条件筛选联合使用。 . sum price in 1/10 if foreign==0 5、[weight] 加权 sum score [weight=num] 其中,num为每个成绩所对应的人数 6、[, options]其他可选项 例如,我们不仅要计算平均成绩,还想知道成绩的中值,方差,偏度和峰度等*/ . sum score, detail . sum score, d //d 为detail 的略写,两个命令完全等价 . list price, nohead //不要表头 Stata 数据类型转换 1、字符型转化成数值型 destring, replace //全部转换为数值型,replace 表示将原来的变量(值)更新 destring date, replace ignore(“ ”) 将字符型数据转换为数值型数据:去掉字符间的空格destring price percent, gen(price2 percent2) ignore(“$ ,%”) 与date 变量类似,变量price 前面有美元符号,变量percent 后有百分号,换为数值型时需要忽略这些非数值型字符 2、数值型转化为字符型

[推荐] stata基本操作汇总常用命令

[推荐] Stata基本操作汇总——常用命令 help和search都是查找帮助文件的命令,它们之间的 区别在于help用于查找精确的命令名,而search是模糊查找。 如果你知道某个命令的名字,并且想知道它的具体使用方法,只须在stata的命令行窗口中输入help空格加上这个名字。回车后结果屏幕上就会显示出这个命令的帮助文件的全部 内容。如果你想知道在stata下做某个估计或某种计算,而 不知道具体该如何实现,就需要用search命令了。使用的 方法和help类似,只须把准确的命令名改成某个关键词。回车后结果窗口会给出所有和这个关键词相关的帮助文件名 和链接列表。在列表中寻找最相关的内容,点击后在弹出的查看窗口中会给出相关的帮助文件。耐心寻找,反复实验,通常可以较快地找到你需要的内容.下面该正式处理数据了。我的处理数据经验是最好能用stata的do文件编辑器记下你做过的工作。因为很少有一项实证研究能够一次完成,所以,当你下次继续工作时。能够重复前面的工作是非常重要的。有时因为一些细小的不同,你会发现无法复制原先的结果了。这时如果有记录下以往工作的do文件将把你从地狱带到天堂。因为你不必一遍又一遍地试图重现做过的工作。在stata 窗口上部的工具栏中有个孤立的小按钮,把鼠标放上去会出

现“bring do-file editor to front”,点击它就会出现do文件编 辑器。 为了使do文件能够顺利工作,一般需要编辑do文件的“头”和“尾”。这里给出我使用的“头”和“尾”。capture clear (清空内存中的数据)capture log close (关闭所有 打开的日志文件)set more off (关闭more选项。如果打开该选项,那么结果分屏输出,即一次只输出一屏结果。你按空格键后再输出下一屏,直到全部输完。如果关闭则中间不停,一次全部输出。)set matsize 4000 (设置矩阵的最大阶数。我用的是不是太大了?)cd D: (进入数据所在的盘符和文件夹。和dos的命令行很相似。)log using (文件名).log,replace (打开日志文件,并更新。日志文件将记录下所有文件运行后给出的结果,如果你修改了文件内容,replace选项可以将其更新为最近运行的结果。)use (文件名),clear (打开数据文件。)(文件内容)log close (关闭日志文件。)exit,clear (退出并清空内存中的数据。) 实证工作中往往接触的是原始数据。这些数据没有经过整理,有一些错漏和不统一的地方。比如,对某个变量的缺失观察值,有时会用点,有时会用-9,-99等来表示。回归时如果 使用这些观察,往往得出非常错误的结果。还有,在不同的数据文件中,相同变量有时使用的变量名不同,会给合并数

Stata统计分析命令

Stata统计分析常用命令汇总 一、winsorize极端值处理 范围:一般在1%和99%分位做极端值处理,对于小于1%的数用1%的值赋值,对于大于99%的数用99%的值赋值。 1、Stata中的单变量极端值处理: stata 11.0,在命令窗口输入“findit winsor”后,系统弹出一个窗口,安装winsor模块 安装好模块之后,就可以调用winsor命令,命令格式:winsor var1, gen(new var) p(0.01) 或者在命令窗口中输入:ssc install winsor安装winsor命令。winsor命令不能进行批量处理。 2、批量进行winsorize极端值处理: 打开链接:https://www.360docs.net/doc/b210419396.html,/judson.caskey/data.html,找到winsorizeJ,点击右键,另存为到stata中的ado/plus/目录下即可。命令格式:winsorizeJ var1var2var3,suffix(w)即可,这样会生成三个新变量,var1w var2w var3w,而且默认的是上下1%winsorize。如果要修改分位点,则写成如下格式:winsorizeJ var 1 var2 var3,suffix(w) cuts(5 95)。 3、Excel中的极端值处理:(略) winsor2 命令使用说明 简介:winsor2 winsorize or trim (if trim option is specified) the variables in varlist at particular percentiles specified by option cuts(# #). In defult, new variables will be generated with a suffix "_w" or "_tr", which can be changed by specifying suffix() option. The replace option replaces the variables with their winsorized or trimmed ones. 相比于winsor命令的改进: (1) 可以批量处理多个变量; (2) 不仅可以winsor,也可以trimming; (3) 附加了by() 选项,可以分组winsor 或trimming; (4) 增加了replace 选项,可以不必生成新变量,直接替换原变量。 范例: *- winsor at (p1 p99), get new variable "wage_w" . sysuse nlsw88, clear . winsor2 wage *- left-trimming at 2th percentile . winsor2 wage, cuts(2 100) trim *- winsor variables by (industry south), overwrite the old variables . winsor2 wage hours, replace by(industry south) 使用方法: 1. 请将winsor 2.ado 和winsor2.sthlp 放置于stata12\ado\base\w 文件夹下; 2. 输入help winsor2 可以查看帮助文件;

stata基础命令

display 命令 display “1+1”输出为1+1 display 1+1 输出为2 set mem设置内存 set mem 500m,perm 设置内存为500m set matsize 500 设置matsize为500 query memory 查看内存设置 保留和删除变量keep & drop drop crcd repttype 删除crcd repttype keep stkcd stknme nindcd nnindcd 保留stkcd stknme nindcd nindcd (注意命令的大小写) save保存stata格式的数据 save “D:\Teach课件\STATA\data\CG_Co.dta “新建文件名 save “D:\Teach课件\STATA\data\CG_Co.dta ”,replace 重置已有文件 use&insheet using use 打开dta文件,insheet using打开csv文件 gen生成的新的变量 gen tdate=date(accper,"YMD") 产生一个tdate变量用来存放从accper变量中提取的年月日 format tdate %d 设置tdate为整数型变量 gen year=year(tdate) 提取tdate里面的年份存为year变量 gen month=month(tdate) 提取tdate里面的月份存为month变量 if条件句&tab离散变量的频率 keep if month==12 如保留变量month等于12的数据(注意双等号) tab year 画出变量year的离散频率 纵向添加数据append use TRD_Year2011.dta,clear 打开2011的数据文件 append using TRD_Year2012.dta 向2011的数据文件中纵向加入2012的数据文件*注意2012内的文件变数量与变数名必须相同,若不同,用keep或drop 保留或删除 merge文件合并 use TRD_Year2011_2012.dta,clear 打开该数据文件 sort stkcd year 排列一下要合并文件内的数据顺序stkcd和year 均为变量名 save TRD_Year2011_2012.dta,replace 排列后重新储存该数据文件

stata命令大全

调整变量格式: format x1 %10.3f ——将x1的列宽固定为10,小数点后取三位 format x1 %10.3g ——将x1的列宽固定为10,有效数字取三位 format x1 %10.3e ——将x1的列宽固定为10,采用科学计数法 format x1 %10.3fc ——将x1的列宽固定为10,小数点后取三位,加入千分位分隔符 format x1 %10.3gc ——将x1的列宽固定为10,有效数字取三位,加入千分位分隔符 format x1 %-10.3gc ——将x1的列宽固定为10,有效数字取三位,加入千分位分隔符,加入“-”表示左对齐 合并数据: use "C:\Documents and Settings\xks\桌面\2006.dta", clear merge using "C:\Documents and Settings\xks\桌面\1999.dta" ——将1999和2006的数据按照样本(observation)排列的自然顺序合并起来 use "C:\Documents and Settings\xks\桌面\2006.dta", clear merge id using "C:\Documents and Settings\xks\桌面\1999.dta" ,unique sort ——将1999和2006的数据按照唯一的(unique)变量id来合并,在合并时对id进行排序(sort)建议采用第一种方法。 对样本进行随机筛选: sample 50 在观测案例中随机选取50%的样本,其余删除 sample 50,count 在观测案例中随机选取50个样本,其余删除 查看与编辑数据: browse x1 x2 if x3>3 (按所列变量与条件打开数据查看器) edit x1 x2 if x3>3 (按所列变量与条件打开数据编辑器) 数据合并(merge)与扩展(append) merge表示样本量不变,但增加了一些新变量;append表示样本总量增加了,但变量数目不变。one-to-one merge: 数据源自stata tutorial中的exampw1和exampw2 第一步:将exampw1按v001~v003这三个编码排序,并建立临时数据库tempw1 clear use "t:\statatut\exampw1.dta" su ——summarize的简写 sort v001 v002 v003 save tempw1 第二步:对exampw2做同样的处理 clear use "t:\statatut\exampw2.dta" su sort v001 v002 v003 save tempw2 第三步:使用tempw1数据库,将其与tempw2合并: clear use tempw1 merge v001 v002 v003 using tempw2

Stata操作入门(中文)

第一讲Stata操作入门 第一节概况 Stata最初由美国计算机资源中心(Computer Resource Center)研制,现在为Stata公司的产品,其最新版本为7.0版。它操作灵活、简单、易学易用,是一个非常有特色的统计分析软件,现在已越来 越受到人们的重视和欢迎,并且和SAS、SPSS一起,被称为新的三大权威统计软件。 Stata最为突出的特点是短小精悍、功能强大,其最新的7.0版整个系统只有10M左右,但已经包含了全部的统计分析、数据管理和绘图等功能,尤其是他的统计分析功能极为全面,比起1G以上大小的SAS系统也毫不逊色。另外,由于Stata在分析时是将数据全部读入内存,在计算全部完成后才 和磁盘交换数据,因此运算速度极快。 由于Stata的用户群始终定位于专业统计分析人员,因此他的操作方式也别具一格,在Windows席卷天下的时代,他一直坚持使用命令行/程序操作方式,拒不推出菜单操作系统。但是,Stata的命令语句极为简洁明快,而且在统计分析命令的设置上又非常有条理,它将相同类型的统计模型均归在同 一个命令族下,而不同命令族又可以使用相同功能的选项,这使得用户学习时极易上手。更为令人叹 服的是,Stata语句在简洁的同时又拥有着极高的灵活性,用户可以充分发挥自己的聪明才智,熟练应用各种技巧,真正做到随心所欲。 除了操作方式简洁外,Stata的用户接口在其他方面也做得非常简洁,数据格式简单,分析结果输出简洁明快,易于阅读,这一切都使得Stata成为非常适合于进行统计教学的统计软件。 Stata的另一个特点是他的许多高级统计模块均是编程人员用其宏语言写成的程序文件(ADO文件),这些文件可以自行修改、添加和下载。用户可随时到Stata网站寻找并下载最新的升级文件。 事实上,Stata的这一特点使得他始终处于统计分析方法发展的最前沿,用户几乎总是能很快找到最新统计算法的Stata程序版本,而这也使得Stata自身成了几大统计软件中升级最多、最频繁的一个。 由于以上特点,Stata已经在科研、教育领域得到了广泛应用,WHO的研究人员现在也把Stata作为主要的统计分析工作软件。 第二节Stata操作入门 一、Stata的界面 图1即为Stata 7.0启动后的界面,除了Windows版本的软件都有的菜单栏、工具栏,状态栏等外,Stata的界面主要是由四个窗口构成,分述如下: 1.结果窗口 位于界面右上部,软件运行中的所有信息,如所执行的命令、执行结果和出错信息等均在这里列出。窗口中会使用不同的颜色区分不同的文本,如白色表示命令,红色表示错误信息。

常用到的stata命令

常用到的sta命令 闲话不说了。help和search都是查找帮助文件的命令,它们之间的区别在于help用于查找精确的命令名,而search是模糊查找。如果你知道某个命令的名字,并且想知道它的具体使用方法,只须在sta的命令行窗口中输入help空格加上这个名字。回车后结果屏幕上就会显示出这个命令的帮助文件的全部内容。如果你想知道在sta下做某个估计或某种计算,而不知道具体该如何实现,就需要用search命令了。使用的方法和help类似,只须把准确的命令名改成某个关键词。回车后结果窗口会给出所有和这个关键词相关的帮助文件名和链接列表。在列表中寻找最相关的内容,点击后在弹出的查看窗口中会给出相关的帮助文件。耐心寻找,反复实验,通常可以较快地找到你需要的内容。 下面该正式处理数据了。我的处理数据经验是最好能用sta的do文件编辑器记下你做过的工作。因为很少有一项实证研究能够一次完成,所以,当你下次继续工作时。能够重复前面的工作是非常重要的。有时因为一些细小的不同,你会发现无法复制原先的结果了。这时如果有记录下以往工作的do文件将把你从地狱带到天堂。因为你不必一遍又一遍地试图重现做过的工作。在sta窗口上部的工具栏中有个孤立的小按钮,把鼠标放上去会出现“bring do-file editor to front”,点击它就会出现do文件编辑器。 为了使do文件能够顺利工作,一般需要编辑do文件的“头”和“尾”。这里给出我使用的“头”和“尾”。 /*(标签。简单记下文件的使命。)*/ capture clear(清空内存中的数据) capture log close(关闭所有打开的日志文件) set mem 128m(设置用于sta使用的内存容量) set more off(关闭more选项。如果打开该选项,那么结果分屏输出,即一次只输出一屏结果。你按空格键后再输出下一屏,直到全部输完。如果关闭则中间不停,一次全部输出。) set matsize4000(设置矩阵的最大阶数。我用的是不是太大了?)

常用stata命令-好用

我常用到的stata命令 最重要的两个命令莫过于help和search了。即使是经常使用stata的人也很难,也没必要记住常用命令的每一个细节,更不用说那些不常用到的了。所以,在遇到困难又没有免费专家咨询时,使用stata自带的帮助文件就是最佳选择。stata的帮助文件十分详尽,面面俱到,这既是好处也是麻烦。当你看到长长的帮助文件时,是不是对迅速找到相关信息感到没有信心? 闲话不说了。help和search都是查找帮助文件的命令,它们之间的区别在于help用于查找精确的命令名,而search是模糊查找。如果你知道某个命令的名字,并且想知道它的具体使用方法,只须在stata的命令行窗口中输入help空格加上这个名字。回车后结果屏幕上就会显示出这个命令的帮助文件的全部内容。如果你想知道在stata下做某个估计或某种计算,而不知道具体该如何实现,就需要用search命令了。使用的方法和help类似,只须把准确的命令名改成某个关键词。回车后结果窗口会给出所有和这个关键词相关的帮助文件名和链接列表。在列表中寻找最相关的内容,点击后在弹出的查看窗口中会给出相关的帮助文件。耐心寻找,反复实验,通常可以较快地找到你需要的内容。 下面该正式处理数据了。我的处理数据经验是最好能用stata的do文件编辑器记下你做过的工作。因为很少有一项实证研究能够一次完成,所以,当你下次继续工作时。能够重复前面的工作是非常重要的。有时因为一些细小的不同,你会发现无法复制原先的结果了。这时如果有记录下以往工作的do文件将把你从地狱带到天堂。因为你不必一遍又一遍地试图重现做过的工作。在stata窗口上部的工具栏中有个孤立的小按钮,把鼠标放上去会出现“bring do-file editor to front”,点击它就会出现do文件编辑器。 为了使do文件能够顺利工作,一般需要编辑do文件的“头”和“尾”。这里给出我使用的“头”和“尾”。 /*(标签。简单记下文件的使命。)*/ capture clear (清空内存中的数据) capture log close (关闭所有打开的日志文件) set mem 128m (设置用于stata使用的内存容量) set more off (关闭more选项。如果打开该选项,那么结果分屏输出,即一次只输出一屏结果。你按空格键后再输出下一屏,直到全部输完。如果关闭则中间不停,一次全部输出。)set matsize 4000 (设置矩阵的最大阶数。我用的是不是太大了?) cd D: (进入数据所在的盘符和文件夹。和dos的命令行很相似。) log using (文件名).log,replace (打开日志文件,并更新。日志文件将记录下所有文件运行后给出的结果,如果你修改了文件内容,replace选项可以将其更新为最近运行的结果。) use (文件名),clear (打开数据文件。) (文件内容)

Stata常用15条命令

【命令1】:导入数据 一般做实证分析使用的是excel中的数据,其后缀名为.xls,需要将其修改为.csv insheet using name.csv, clear 【命令2】:删除重复变量 sort var1 var2 duplicatesdrop var1 var2, force 【命令3】:合并数据 use data1, clear merge m:m var1 var2 using data2 drop if _merge==2 drop if _merge==1 drop _merge 【命令4】:描述性统计分析 tabstat var1var2, stat(n min mean median p25 p75 max sd), if groupvar==0 or 1 输出到word中: logout, save(name) word replace: tabstat var, stat(n min mean p50 max sd) col(stat)f(%9.2g) 【命令5】:结果输出 安装 ssc install estout, replace 单个回归 reg y x esttab using name.rtf, compress nogap r2 ar2 star(* 0.1 ** 0.05 *** 0.01) 多个回归一起 reg y x1 est store m1 reg y x2 est store m2 esttab m1 m2 using name.rtf, compress nogap r2 ar2 star(* 0.1 ** 0.05 *** 0.01)

stata常用命令

调整变量格式: format x1 % ——将x1的列宽固定为10,小数点后取三位 format x1 % ——将x1的列宽固定为10,有效数字取三位 format x1 % ——将x1的列宽固定为10,采用科学计数法 format x1 % ——将x1的列宽固定为10,小数点后取三位,加入千分位分隔符 format x1 % ——将x1的列宽固定为10,有效数字取三位,加入千分位分隔符 format x1 % ——将x1的列宽固定为10,有效数字取三位,加入千分位分隔符,加入“-”表示左对齐合并数据: use "C:\Documents and Settings\xks\桌面\", clear merge using "C:\Documents and Settings\xks\桌面\" ——将1999和2006的数据按照样本(observation)排列的自然顺序合并起来 use "C:\Documents and Settings\xks\桌面\", clear merge id using "C:\Documents and Settings\xks\桌面\" ,unique sort ——将1999和2006的数据按照唯一的(unique)变量id来合并,在合并时对id进行排序(sort)建议采用第一种方法。 对样本进行随机筛选: sample 50 在观测案例中随机选取50%的样本,其余删除 sample 50,count 在观测案例中随机选取50个样本,其余删除 查看与编辑数据: browse x1 x2 if x3>3 (按所列变量与条件打开数据查看器) edit x1 x2 if x3>3 (按所列变量与条件打开数据编辑器) 数据合并(merge)与扩展(append) merge表示样本量不变,但增加了一些新变量;append表示样本总量增加了,但变量数目不变。one-to-one merge: 数据源自stata tutorial中的exampw1和exampw2 第一步:将exampw1按v001~v003这三个编码排序,并建立临时数据库tempw1 clear use "t:\statatut\" su ——summarize的简写 sort v001 v002 v003 save tempw1 第二步:对exampw2做同样的处理 clear use "t:\statatut\" su sort v001 v002 v003 save tempw2 第三步:使用tempw1数据库,将其与tempw2合并: clear use tempw1 merge v001 v002 v003 using tempw2 第四步:查看合并后的数据状况:

Stata基本命令

Stata基本命令 一、描述性统计 命令:sum(var1 var2) 二、独立样本t检验 命令:ttest var1, by(group) 三、回归 (一)检测变量是否需要加对数 1、C-D方程中基本都要加对数,除了0-1的小数和离散变量 命令:gen lnvar1=log(var1),若var1有零值,则gen lnvar1=log(var1+1) 2、其他方程的变量检测 (1)sktest var1,若PT(skewness)>0.05,则呈正态分布,不用加对数(2)ladder var1,若P(chi2)越大,就选这种形式。 (二)构建面板数据 命令:xtset county year (三)回归 1、随机效应模型 命令:xtreg y var1 var2 DID t_2008 t_2007 t_2006 t_2005 south north,re 2、固定效应模型(地区变量不需要放进去) 命令:xtreg y var1 var2 DID t_2008 t_2007 t_2006 t_2005,fe

3、随机效应模型和固定效应模型的结果只能两者选其一,方法是Hausman检验,做法如下:第一步:固定效应模型回归 xtreg y var1 var2 DID t_2008 t_2007 t_2006 t_2005,fe 第二步:存储固定效应值 est store fe 第三步:随机效应模型回归 xtreg y var1 var2 DID t_2008 t_2007 t_2006 t_2005 south north,re 第四步:存储随机效应值 est store re 第五步:检测 hausman fe re,看prob>chi2的结果,若显著,则选择固定效应模型。(一般都是选择固定效应模型) 四、注意数据的保存和命令的保存 Do命令的保存,可以使用英文的””在里面加注释

常用到的stata命令

安装estat: ssc install estout,replace\ 2010-10-14 11:38:15来自: 杨囡囡(all a woman lack is a wife) (转自人大论坛) 调整变量格式: format x1 %10.3f ——将x1的列宽固定为10,小数点后取三位 format x1 %10.3g ——将x1的列宽固定为10,有效数字取三位 format x1 %10.3e ——将x1的列宽固定为10,采用科学计数法 format x1 %10.3fc ——将x1的列宽固定为10,小数点后取三位,加入千分位分隔符 format x1 %10.3gc ——将x1的列宽固定为10,有效数字取三位,加入千分位分隔符 format x1 %-10.3gc ——将x1的列宽固定为10,有效数字取三位,加入千分位分隔符,加入“-”表示左对齐 合并数据: use "C:\Documents and Settings\xks\桌面\2006.dta", clear merge using "C:\Documents and Settings\xks\桌面\1999.dta" ——将1999和2006的数据按照样本(observation)排列的自然顺序合并起来 use "C:\Documents and Settings\xks\桌面\2006.dta", clear merge id using "C:\Documents and Settings\xks\桌面\1999.dta" ,unique sort ——将1999和2006的数据按照唯一的(unique)变量id来合并,在合并时对id进行排序(sort) 建议采用第一种方法。 对样本进行随机筛选: sample 50 在观测案例中随机选取50%的样本,其余删除 sample 50,count 在观测案例中随机选取50个样本,其余删除 查看与编辑数据:

相关文档
最新文档