Stata统计分析常用命令汇总一、winsorize极端值处理范围:一般在1%和99%分位做极端值处理,对于小于1%的数用1%的值赋值,对于大于99%的数用99%的值赋值。1、Stata中的单变量极端值处理:stata11.0,在命令窗口输入“finditwinsor”后,系统弹出一个窗口,安装winsor模块安装好模块之后,就可以调用winsor命令,命令格式:winsorvar1,gen(newvar)p(0.01)或者在命令窗口中输入:sscinstallwinsor安装winsor命令。winsor命令不能进行批量处理。2、批量进行winsorize极端值处理:打开链接:,找到winsorizeJ,点击右键,另存为到stata中的ado/plus/目录下即可。命令格式:winsorizeJvar1var2var3,suffix(w)即可,这样会生成三个新变量,var1wvar2wvar3w,而且默认的是上下1%winsorize。如果要修改分位点,则写成如下格式:winsorizeJvar1var2var3,suffix(w)cuts(595)。3、Excel中的极端值处理:(略)winsor2命令使用说明简介:winsor2winsorizeortrim(iftrimoptionisspecified)thevariablesinvarlistatparticularpercentilesspecifiedbyoptioncuts(##).Indefult,newvariableswillbegeneratedwithasuffix_wor_tr,whichcanbechangedbyspecifyingsuffix()option.Thereplaceoptionreplacesthevariableswiththeirwinsorizedortrimmedones.相比于winsor命令的改进:(1)可以批量处理多个变量;(2)不仅可以winsor,也可以trimming;(3)附加了by()选项,可以分组winsor或trimming;(4)增加了replace选项,可以不必生成新变量,直接替换原变量。范例:*-winsorat(p1p99),getnewvariablewage_w.sysusenlsw88,clear.winsor2wage*-left-trimmingat2thpercentile.winsor2wage,cuts(2100)trim*-winsorvariablesby(industrysouth),overwritetheoldvariables.winsor2wagehours,replaceby(industrysouth)使用方法:1.请将winsor2.ado和winsor2.sthlp放置于stata12\ado\base\w文件夹下;2.输入helpwinsor2可以查看帮助文件;二、描述性统计1、summarize命令格式:su、sum或者summarize[varlist][if][in][weight][,options]如果summarize或sum后不加任何变量,则默认对数据中的所有变量进行描述统计options选项:detail表示产生更加详细的统计变量Separator(n)表示每n个变量画一条分界线,n=0表示禁止使用分界线Summarize描述统计输出表中包含:样本容量、平均数、标准差、最小值和最大值2、tabstat命令格式:tabstat[varlist][if][in][weight][,options]options选项:stat(statname)表示设定所需要的统计量col(stat)或c(s)表示将结果报表转置统计量:mean:平均数count/n:观测值数目sum:加总max/min:最大值/最小值range:极差sd:标准差cv:变异系数semean:平均标准误差skewness:偏度var:方差kurtosis:峰度median/p50:中位数p#:#%百分位数例如:tabstat[varlist],stat(countmeansdmedianminmaxrange)col(stat)3、描述性统计结果输出到word或Excel用sum做的描述性统计:logout,save(miaoshutongji)wordreplace:sum用tabstat做的描述性统计:logout,save(miaoshutongji)wordreplace:tabstat[varlist],stat(countmeansdmedianminmaxrange)col(stat)分组描述:bysortvar:三、相关性分析(一)相关性分析1、Pearson相关系数命令格式:correlate(简写:cor或corr)[varlist][if][in][weight][,options]2、spearman相关系数命令格式:spearman[varlist],stats(rhop)3、在Stata中,命令corr用于计算一组变量间的协方差或相关系数矩阵;4、命令pwcorr可用于计算一组变量中两两变量的相关系数,同时还可以对相关系数的显著性进行检验;option选项中加上sig可显示显著性水平:pwcorr[varlist],sig5、命令pcorr用于计算一组变量中两两变量的偏相关系数并进行显著性检验。6、Spearman和Pearson检验同在一个表的命令:corrtbl[varlist],corrvars([varlist])输出结果中,上三角为Spearman相关系数和显著水平,下三角为Pearson系数和显著水平。(二)输出相关系数表到word或Excel中例如:logout,save(mytable)wordreplace:pwcorr_apricempgrep78headroomtrunk,star1(0.01)star5(0.05)star10(0.1)四、截面数据单方程线性回归模型的Stata实现命令格式:regress(简写:reg)depvarindepvars[if][in][weigh][option](depvar表示因变量,indepvars表示自变量)五、异方差的检验与处理1、检验异方差命令格式:hettest2、判断异方差的标准:看P值的大小来判断,如果P值小于0.05,则不能排除异方差的可能,上图中P值等于0.45840.05,因此,可以排除异方差的可能性。3、处理异方差命令格式:在reg命令后加上“,r”或者“,robust”即可。经异方差处理后的回归不显示调整后的R2(adj-R2),如果要查看调整后的R2,再输入命令:die(r2_a)六、多重共线性(自变量之间高度相关)命令格式:vif(一)判断多重共线性的标准(两个标准必须同时满足):1、最大的vif大于10;2、平均的vif大于1。(二)多重共线性的修正1、采用逐步回归进行修正,命令格式:swregdepvarindepvar,pr(0.05)2、对于含二次项的,使用“对中”的方法,既可以保留二次项,又可以在一定程度上克服多重共线性的问题:先定义两个变量,分别为该变量减去其均值和该变量的平方,命令如下:sumvargenvar1=var-r(mean)genvar2=var^2再用新变量代替原来的变量进行回归处理七、内生性的检验与处理(内生性是指自变量与误差项之间有关系)1、内生性的检验:ovtest看P值的大小来判断,如果P值小于0.05,则不能排除内生性的可能,上图中P值等于0.47170.05,因此,可以排除内生性的可能。2、内生性的处理:使用工具变量法:ivreg内生性的三个来源:测量误差、遗漏变量和双向因果。1、变量的内生性。这个是没有办法单独检验的。当有合适工具变量时候,是可以检验的,就是hausman检验2、工具变量的外生性。这个也是没办法检验的。当有很多工具变量时候,可以检验是否有不是外生的,就是“过度识别”问题3、工具变量的相关性。这个可以说成是“弱工具变量”问题,检验可以通过一阶段的F值。还可以利用PartialR2。4、估计方法stata里面有这么几个2sls,2slssmal、liml、gmm,各自适用情况:small适合小样本;liml适合弱工具变量;gmm适合异方差。【例子】webusehsng2*Fitaregressionvia2SLS,requestingsmall-samplestatisticsivregress2slsrentpcturban(hsngval=faminciregion),small*FitaregressionusingtheLIMLestimatorivregresslimlrentpcturban(hsngval=faminciregion)*FitaregressionviaGMMusingthedefaultheteroskedasticity-robustweightmatrixivregressgmmrentpcturban(hsngval=faminciregion)*FitaregressionviaGMMusingaheteroskedasticity-robustweightmatrix,requestingnonrobuststandarderrorsivregressgmmrentpcturban(hsngval=faminciregion),vce(unadjusted)*检验estatafirststage,allforcenonrobust\\\可以查看第一阶段F值,已经partialR2estatoverid\\\查看是否过度识别estatendogenous\\\查看是否异方差regress2slsrentpcturbanhsngvaleststorem1ivregress2slsrentpcturban(hsngval=faminciregion)eststorem2hausmanm1m2\\\内生检验八、线性方程组的回归分析命令格式:sureg(depvar1varlist1)(depvar2varlist2)…(depvarNvarlistN)[if][in][weigh]九、联立方程组命令格式:reg3(depvar1varlist1)(depvar2varlist2)…(depvarNvarlistN)[if][in][weigh]十、面板数据的固定效应和随机效应Xtset固定效应命令格式:xtregdepvarindepvars[if][in],fe[FE_options]随机效应命令格式:xtregdepvarindepvars[if][in],re[FE_options]hausman检验固定效应还是随机效应?【例子】xtregyvar1var2var3,feeststorefextregyvar1var2var3,reeststorerehausmanfere,sigmamorehausmanfere,sigmaless*sigmamore利用有效估计量方差,即re*sigmaless利用一致估计量方差,即fe十一:Stata回归结果的导出1、在命令窗口中输入:sscinstallesttab,安装命令esttab2、reg回归3、esttabusingfilename.rtf将以word形式输出回归结果,后缀改成.xls或者.csv则以Excel格式输出,输出内容为变量名称和相应的回归系数,t值,显著性水平标识。系统默认显著性水平是0.001,0.01和0.05,若要改成0.01,0.05和0.1,则输出esttabm1m2usingaaa.rtf,star(*0.10**0.05***0.01)。4、批量输出回归结果:每