Stata统计分析命令.docx
《Stata统计分析命令.docx》由会员分享,可在线阅读,更多相关《Stata统计分析命令.docx(11页珍藏版)》请在冰豆网上搜索。
Stata统计分析命令
Stata统计分析常常利用命令汇总
一、winsorize极端值处置
范围:
一样在1%和99%分位做极端值处置,关于小于1%的数用1%的值赋值,关于大于99%的数用99%的值赋值。
一、Stata中的单变量极端值处置:
stata,在命令窗口输入“finditwinsor”后,系统弹出一个窗口,安装winsor模块
安装好模块以后,就可以够够够够挪用winsor命令,命令格式:
winsorvar1,gen(newvar)p
或在命令窗口中输入:
sscinstallwinsor安装winsor命令。
winsor命令不能进行批量处置。
二、批量进行winsorize极端值处置:
打开链接:
,找到winsorizeJ,点击右键,另存为到stata中的ado/plus/目录下即可。
命令格式:
winsorizeJvar1var2var3,suffix(w)即可,如此会生成三个新变量,var1wvar2wvar3w,而且默许的是上下1%winsorize。
假设是要修改分位点,那么写成如下格式:
winsorizeJvar1var2var3,suffix(w)cuts(595)。
3、Excel中的极端值处置:
(略)
winsor2命令利用说明
简介:
winsor2winsorizeortrim(iftrimoptionisspecified)thevariablesinvarlistatparticularpercentilesspecifiedbyoptioncuts(##).Indefult,newvariableswillbegeneratedwithasuffix"_w"or"_tr",whichcanbechangedbyspecifyingsuffix()option.Thereplaceoptionreplacesthevariableswiththeirwinsorizedortrimmedones.
相较于winsor命令的改良:
(1)能够批量处置多个变量;
(2)不仅能够winsor,也能够trimming;
(3)附加了by()选项,能够分组winsor或trimming;
(4)增加了replace选项,能够没必要生成新变量,直代替换原变量。
范例:
*-winsorat(p1p99),getnewvariable"wage_w"
.sysusenlsw88,clear
.winsor2wage
*-left-trimmingat2thpercentile
.winsor2wage,cuts(2100)trim
*-winsorvariablesby(industrysouth),overwritetheoldvariables
.winsor2wagehours,replaceby(industrysouth)
利用方式:
1.请将和放置于stata12\ado\base\w文件夹下;
2.输入helpwinsor2能够查看帮忙文件;
二、描述性统计
一、summarize
命令格式:
su、sum或summarize[varlist][if][in][weight][,options]
假设是summarize或sum后不加任何变量,那么默许对数据中的所有变量进行描述统计
options选项:
detail表示产生加倍详细的统计变量
Separator(n)表示每n个变量画一条分界限,n=0表示禁止利用分界限
Summarize描述统计输出表中包括:
样本容量、平均数、标准差、最小值和最大值
二、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:
三、相关性分析
(一)相关性分析
一、Pearson相关系数命令格式:
correlate(简写:
cor或corr)[varlist][if][in][weight][,options]
二、spearman相关系数命令格式:
spearman[varlist],stats(rhop)
3、在Stata中,命令corr用于计算一组变量间的协方差或相关系数矩阵;
4、命令pwcorr可用于计算一组变量中两两变量的相关系数,同时还能够对相关系数的显著性进行查验;option选项中加上sig可显示显著性水平:
pwcorr[varlist],sig
五、命令pcorr用于计算一组变量中两两变量的偏相关系数并进行显著性查验。
六、Spearman和Pearson查验同在一个表的命令:
corrtbl[varlist],corrvars([varlist])
输出结果中,上三角为Spearman相关系数和显著水平,下三角为Pearson系数和显著水平。
(二)输出相关系数表到word或Excel中
例如:
logout,save(mytable)wordreplace:
pwcorr_apricempgrep78headroomtrunk,star1star5star10
四、截面数据单方程线性回归模型的Stata实现
命令格式:
regress(简写:
reg)depvarindepvars[if][in][weigh][option]
(depvar表示因变量,indepvars表示自变量)
五、异方差的查验与处置
一、查验异方差命令格式:
hettest
二、判定异方差的标准:
看P值的大小来判定,假设是P值小于,那么不能排除异方差的可能,上图中P值等于>,因此,能够排除异方差的可能性。
3、处置异方差命令格式:
在reg命令后加上“,r”或“,robust”即可。
经异方差处置后的回归不显示调整后的R2(adj-R2),假设是要查看调整后的R2,再输入命令:
die(r2_a)
六、多重共线性(自变量之间高度相关)命令格式:
vif
(一)判定多重共线性的标准(两个标准必需同时知足):
一、最大的vif大于10;
二、平均的vif大于1。
(二)多重共线性的修正
一、采用慢慢回归进行修正,命令格式:
swregdepvarindepvar,pr
二、关于含二次项的,利用“对中”的方式,既能够保留二次项,又能够在必然程度上克服多重共线性的问题:
先概念两个变量,别离为该变量减去其均值和该变量的平方,命令如下:
sumvar
genvar1=var-r(mean)
genvar2=var^2
再用新变量代替原先的变量进行回归处置
七、内生性的查验与处置(内生性是指自变量与误差项之间有关系)
一、内生性的查验:
ovtest
看P值的大小来判定,假设是P值小于,那么不能排除内生性的可能,上图中P值等于>,因此,能够排除内生性的可能。
二、内生性的处置:
利用工具变量法:
ivreg
内生性的三个来源:
测量误差、遗漏变量和双向因果。
一、变量的内生性。
那个是没有方式单独查验的。
当有适合工具变量时候,是能够查验的,确实是hausman查验
二、工具变量的外生性。
那个也是没方式查验的。
当有很多工具变量时候,能够查验是不是有不是外生的,确实是“过度识别”问题
3、工具变量的相关性。
那个能够说成是“弱工具变量”问题,查验能够通过一时期的F值。
还能够利用PartialR2。
4、估量方式
stata里面有这么几个2sls,2slssmal、liml、gmm,各自适用情形:
small适合小样本;liml适合弱工具变量;gmm适合异方差。
【例子】
webusehsng2
*Fitaregressionvia2SLS,requestingsmall-samplestatistics
ivregress2slsrentpcturban(hsngval=faminciregion),small
*FitaregressionusingtheLIMLestimator
ivregresslimlrentpcturban(hsngval=faminciregion)
*FitaregressionviaGMMusingthedefaultheteroskedasticity-robustweightmatrix
ivregressgmmrentpcturban(hsngval=faminciregion)
*FitaregressionviaGMMusingaheteroskedasticity-robustweightmatrix,requestingnonrobuststandarderrors
ivregressgmmrentpcturban(hsngval=faminciregion),vce(unadjusted)
*查验
estatafirststage,allforcenonrobust\\\能够查看第一时期F值,已经partialR2
estatoverid\\\查看是不是过度识别
estatendogenous\\\查看是不是异方差
regress2slsrentpcturbanhsngval
eststorem1
ivregress2slsrentpcturban(hsngval=faminciregion)
eststorem2
hausmanm1m2\\\内生查验
八、线性方程组的回归分析
命令格式:
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,fe
eststorefe
xtregyvar1var2var3,re
eststorere
hausmanfere,sigmamore
hausmanfere,sigmaless
*sigmamore利用有效估量量方差,即re
*sigmaless利用一致估量量方差,即fe
十一:
Stata回归结果的导出
一、在命令窗口中输入:
sscinstallesttab,安装命令esttab
二、reg回归
3、esttabusing将以word形式输出回归结果,后缀改成.xls或.csv那么以Excel格式输出,输出内容为变量名称和相应的回归系数,t值,显著性水平标识。
系统默许显著性水平是,和,假设要改成,和,那么输出esttabm1m2using,star(******。
4、批量输出回归结果:
每运行一个regression,存起来:
eststorem1。
m1是你要改的,第一个model因此我叫m1,第二个的话指令就变成eststorem2,依次类推,最后运行指令:
esttabm1m2...using。
esttabm11111using,star(******b(%6.4f)
五、outreg2能够将回归结果导入word、excle、latex等,而且能够依照自己需要改变格式:
sscinstalloutreg2
useauto,clear
[varlist]
eststorem1
outreg2[m1]using,replace
十二、归并样本(将关键词相同的多个样本归并为一个)
命令格式:
duplicatesdropvarlist,force
例如将同一企业在同一天发生的多起并购合为一路,可依照证券代码和公告日期关键词,将其归并,命令:
duplicatesdropcompany_idevent_date,force
十三、均值t查验
命令格式:
ttestCAR1==CAR2,unpaired
十四、中位数Z查验(非参数Wilcoxon秩和查验)
命令格式:
ranksumvar,by(groupvar)
groupvar为分组变量
十五、查验两组均值的显著性不同,在t查验的后面数值上面加星号
能够用ttest命令执行查验,它会直接报告星号。
亦可采用外部命令meantab执行查验,自己依照t值大小标注星号。
helpmeantab李春涛cond(x>2,50,70))returns.ifxismissing,returns50ifx>2,andreturns70ifx<2
十七、中心化处置与标准化处置
一、安装命令:
finditcenter
二、中心化:
centervarlist(注:
生成的新变量默许加前置”c_”,可一次对多个变量进行处置)
或:
centervar,g(newvar)(注:
只能对一个变量进行中心化,并生成给定名称的新变量)
3、标准化:
centervarlist,prefix(z_)standardize(注:
生成的新变量加前置”z_”,可多个,可更改)
十八、恢复数据命令
preserve(处置数据前利用该命令,不然没有数据可恢复)
dropvar1-var100(处置数据)
restore(恢复数据)
十九、genicv产生交叉项
【问题】
有时候,想生成很多交叉项,可是又不肯意一个一个写。
有时候,想看一个交叉项,可是又不肯意生成。
【方式】
genicv能够一键生成很多交叉项
##能够直接表示交叉项。
【例子】
sscinstallgenicv
sysuseauto,clear
genicvlengthweightforeign4”
11010”12.0f
returnsx(not“.”)ifxismissing,meaningthatceil(.a)=.a
(x),returnstheuniqueintegernsuchthatn<=x(x),returnstheintegerobtainedbytruncatingxtoward0;thus,int=5,int=-5,returnsx(not“.”)ifxismissing,meaningthatint(.a)=.a。
Onewaytoobtaintheclosestintegertoxisint(x+sign(x)/2),whichsimplifiestoint(x+forx0.However,useoftheround()functionispreferred
任何两种软件之间的数据转换,有一种方式是人挡杀人,佛挡杀佛。
那确实是:
先在A软件里面将其另存为文本格式,然后在B软件里面里面以文本文件导入,再保存为B软件的文件格式。
文本格式,我一般习惯将其存为.csv格式,即变量数据间以逗号分隔,也可以以制表符分隔或、空格分隔或是固定列宽。
伍德里奇《横截面与面板数据的经济计量分析》
下面简腹地分享一下安装步骤或进程(那个地址演示的是WIN7_32):
一、下载全数的安装文件包“,然后解压,再打开其中的文件夹Stata12_Win,再“以治理员身份运行”其中的。
二、选择并点击next,再选择并点击“Iacceptthelicenseagreement”,再选择并点击“anyonewhousesthiscomputer”或“onlyforme”,然后,就进入到以下界面,给你4个选择:
32-bitMP,32-bitSE,32-bitIC,32-bitSmall。
那个地址,注意,请选择32-bitSE(那个地址演示的是WIN7_32,假设你的系统是64位的,那么选择64-bitSE)。
说明一下,STATA的最高级的版本是MP。
SE的版本级别仅次于MP。
MP与SE的唯一区别在于,前者designedforparallelprocessing,而后者没有。
言下之意,前者能够通过同时运行多处置器或内核来加速运算速度,二者在功能上完全没有区别,只是在大数据处置时,MP要占优。
因此,咱们通常的教学与科研利用,SE版本已经足够。
目前网上释放出来的破解的最高版本仅限于SE版,MP版未有破解。
我想,假设是你真的需要以MP版进行大数据处置,那必然是相当高级别的用户了,购买一个正版的MP版就一点都只是度了。
三、然后再次点击“next”、“next”,然后选择点击“UseEachUser’sDocumentsFolder”或“UseaFixedFolderforAllusers”(本人建议选择后者,并在非系统分区中建议一个文件夹,比如,我通常以C分区为系统盘,因此,我通常在D分区中成立一个工作文件夹即D:
\data)。
继续next,next,那么开始复制文件与安装软件,直到显现Finish,点击它,就安装完成了。
四、将crack文件夹中的文件“”复制到安装文件夹中(一样为:
C:
\ProgramFiles\Stata12)。
五、运行STATA,在command中输入“dbupdate”并回车(注意,不能输入“updateall”命令,这是自动升级的命令,一方面自动升级通常很慢,另一方面,自动升级往往不成功),在随后显现的“update–Checkforofficialupdates”对话框中,选择“Fromalternativelocation”,点击“browse”找到本人提供的安装文件中的文件夹“stata12update_win32”(假设你是64位的系统,那么为“stata12update_win64”),点击“确信”、“OK”。
六、按提示,或点击“installavailableupdate”,或在command中输入“updateall”。
七、升级完成后,会提示,这是一个SpecialEdition,点击help中的“AboutStata”那么显示版本为“Stata/forWindows(32-bit)”,其最新的更新日期为2021年3月20日。
享用。