1、stata使用手册STATA基本入门前言STATA是一个十分好用而且简单的统计软件包,透过轻松的数据输入方式,而且简单的指令,即可执行一般在计量经济学上常用的计量模型。除了计量模型外,STATA的软件包中也可执行统计学中的估计和检定,甚至是多变量分析中的各项分析工具。因此,STATA可以说是一个相当强而有力的统计软件。一、安装STATA所须的内存容量不大,只有4.03MB。此外,安装也相当简单,只要在SETUP上点两下,安装完成后再分别输入”Sn”、”Code”和”Key”即可开始使用。但是安装过程中有一点必须注意的是,如下图所示,有”Intercooled”和”Small”两个选项。一般而言
2、,为了方便日后要设定较大的内存容量来处理大笔的资料,通常选择以”Intercooled”进行安装。以此項進行安裝二、窗口介绍1安装完成后,点选桌面上STATA的图标,窗口画面如下图所示。为了使画面美观,我们可以将画面拉到自己喜欢的地方,如下图所示。为了保存这个窗口画面,我们必须点选工具列上的”Prefs”下的”SaveWindowingPreferences”。如此一来,以后开启STATA时都会以此窗口画面呈现。2執行過的指令都會保留於此指令的執行結果看這裡資料中的變數在這裡在此輸入指令接下来,我们依序介绍四个窗口的功用:左上Review:此一窗口用于记录在开启STATA后所执行过的所有指令。
3、因此,若欲使用重复的指令时,只要在该指令上点选两下即可执行相同的指令;若欲使用类似的指令时,在该指令上点一下,该指令即会出现在窗口”StataCommand”上,再进行修改即可。此外,STATA还可以将执行过的指令储存下来,存在一个do-file内,下次即可再执行相同的指令。左下Variables:此一窗口用于呈现某笔数据中的所有变量。换言之,当数据中的变量都有其名称时,变量名称将会出现在此一窗口中。只要数据有读进STATA中,变量名称就会出现。它的优点是(1)确认数据输入无误;(2)只要在某变量上点选两下,该变量即会出现在窗口”StataCommand”上。右上StataResults:此一
4、窗口用于呈现并记录指令执行后的结果。右下StataCommand:此一窗口用于输入所欲执行的指令。Note:以上四个窗口都可以从”Fonts”去更改字体大小。三、输入数据(Enteringdata)3在本小节中,我们将介绍如何把数据读进STATA。但是在正式介绍之前,我们必须先对几个一般性的指令(generalcommand)有所了解,说明如下:cd:即changedirectory,简言之,告知STATA数据储存的地方。例如当数据储存在e槽的sample数据夹时,则必须先输入cde:sample。dir/ls:用来显示目录的内容。setmemory#m:设定内存的容量。例如:当有一笔庞大的数
5、据要处理时,则可设定100mb的容量,此时可输入set memory100m。(输入指令memory可以知道内存容量的大小以及使用情况。)setmatsize#:设定所需的变量个数。一般而言,不须对此部分进行设定,除非所欲处理的资料庞大或是当执行后出现matsize toosmall的讯息时再进行修改即可。内建为40。setmoreoff/on:若欲执行结果以分页的型式呈现时,则输入setmoreon;若欲执行结果同时呈现时,则输入setmoreoff。help:求助键。后面必须接的是指令。说明如何使用该指令,例如:helpregress。search:求助键。后面可接任何文字。说明在何处可以
6、找到该文字。例如:searchnormaldistribution。clear:清除键。用来删除所有数据。接下来,根据数据类型或指令的不同,数据输入的方法可分成以下四种:1、输入EXCEL数据将EXCEL的数据输入STATA的方式还可细分成以下两种:将EXCEL的数据输入STATA之前,必须先将数据存成csv文件,再利用指令insheet来读数据。Example:当csv档的第一列有变量名称时:cde:sampledirmemorysetmemory10minsheetusingsample1-1.csv4variablenameColumnnumberid1-2eng3-4math5-6se
7、x7micro8-9macro10-11当csv档的第一列没有变量名称时:insheetgenderidracesesschtypprgtypereadwritemathsciencesocstusingsample1-2.csv直接复制EXCEL上的数据,再到STATA选取”Window”下的”DataEditor”,点选后会出现”StataEditor”工作表,再到”Edit”下选取”Paste”即可贴上数据。2、输入ASCII的数据型态依ASCII 的数据型态区分,将ASCII 的数据输入STATA的方式也有以下两种:数据型态一:见sample1-3.txtinfilegenderidr
8、acesesschtypstr10prgtypereadwritemathsciencesocstusingsample1-3.txtNote:记住文字的设定方式(str#variablename)。数据型态二:见sample1-4.txt第二种的数据型态通常须要codebook。如下表所示。infixid1-2eng3-4math5-6gender7micro8-9macro10-11usingsample1-4.txt3、利用Do-fileeditor输入数据5insheetreadASCII(text)datacreatedbyaspreadsheetinfilereadunformat
9、tedASCII(text)datainfixreadASCII(text)datainfixedformatinputenterdatafromkeyboarduseloadaStata-formatdataset将数据或是指令写入Do-fileeditor,再执行即可。例如:将下面数据复制并贴在Do-fileeditor(选取”Window”下的”Do-fileeditor”)上,再选择”docurrnetfile”执行即可。cde:sampleinputidfemaleracesesstr3schtypeprogreadwritemathsciencesocst147113pub1476
10、2535361108012pub2343341363618032pub35033494436153012pub3393140395150022pub2505942536151121pub24236423139102011pub1524151535657112pub17165726656160112pub15565555061136012pub16559706351end4、利用STATA的数据型态输入除了以上三种方法之外,还可以开启之前以STATA储存的资料。usesample1-6.dtaNote:此一指令亦可用在读取网络上的数据(use网址)。最后,将数据输入的相关指令整理成下表。四、探索
11、资料(Exploringdata)为了更详细地呈现出在数据探索时所需使用的相关指令,我们利用sample4-1来说明指令的用法。首先,利用前节所提及的数据输入方法将sample4-1读进STATA。6在正式分析数据之前,我们可以利用一个log档来储存之后所要执行的指令以及所得到的结果。指令的表示方法如下:logusingresult4-1,text(log檔的名稱為result4-1)接下来,我们可以先利用下面的指令来检视sample4-1的数据:count:可得样本数。describe:描述数据来源以及数据大小。list:依序列出观察值的各个变量值。codebook:描述资料的详细内容。此外
12、,我们就可以利用summarize、tabulate和tabstat等指令得到数据的叙述统计与基本特性。表示如下:summarize:列出资料的叙述统计。Example:summarizewrite,detailsumwriteifread=60(sum是summarize的简写)sumwriteifprgtype=academic(接在if之后的句子中的”=”要放两个)sumwritein1/40(只列出第1笔到第40笔资料)tabulate:列出变数的次数表。Example:tabulateprgtypetabulateprgtyperacetabulateprgtype,summariz
13、e(read)tabulateprgtyperace,summarize(write)tabstat:列出变量的叙述统计。Example:tabstatreadwritemath,by(prgtype)stat(nmeansd)tabstatwrite,stat(nmeansdp25p50p75)by(prgtype)接下来,我们介绍一些用来划图的指令:茎叶图:stemwritestemwrite,lines(2)直方图:graphwrite,bin(10)graphwrite,histnormalbin(10)7countShowthenumberofobservationsdescribe
14、DescribecontentsofdatainmemoryorondisklistListvaluesofvariablescodebookDetailedcontentsofadatasetlogCreatealogfilesummarizeDescriptivestatisticstabulateOne-&two-wayfrequencytablestabstatTableofdescriptivestatisticsstemStem-and-leafplotgraphHighresolutiongraphssortSortobservationsinadatasethistHistog
15、ramofacategoricalvariablecorrelateCorrelations箱形图:graphwrite,boxsortprgtype(要先有这个指令才能执行下一个指令)graphwrite,boxby(prgtype)此外,利用correlate或是pwcorr可以得到相关矩阵;亦可利用graph划出散布图。correlatewritereadsciencepwcorrwritereadscience,obsgraphwriteread,twowaygraphwriteread,twojitter(2)(two是twoway的簡稱,jitter是用來區分重疊的觀察點)grap
16、hwriteread,twojitter(2)boxgraphreadsciencewrite,matrixhalf现在我们可以将log文件结束了,指令输入如下:logclose若欲检视log档中的结果,可以输入指令:typeresult4-1.log或是到所储存的目录下点选。最后,将数据探索的相关指令整理成下表。8pwcorrPairwisecorrelationstypeDisplayanASCIIfile五、修饰资料(Modifyingdata)在本小节中,我们亦利用sample4-1的数据进行说明。首先,读进数据。读完数据后,可以为此数据取个名称,指令如下:labeldataHighS
17、choolandBeyond,200cases现在我们可以将变量的顺序作一排列。例如:原先的变量顺序为gender、id和race,但是我们想把顺序改成id、gender和race,则可以下面的指令来执行:orderidgender在执行codebook时,我们会发现有些变量尚未加上卷标(label),为了更清楚地表达变量所代表的意义,我们可以执行以下的指令:labelvariableschtypThetypeofschoolthestudentattended.现在,我们想要产生一个新变量total,此变量代表read、write和math的总和。指令如下:generatetotal=rea
18、d+write+math此外,若是我们想加总的分数是read、write和socst,而非read、write和math,此时的指令输入如下:replacetotal=read+write+socst另一方面,我们还可以将变量total表示成以等级(A、B、C、DandF)的形式。指令如下:generategrade=totalrecodegrade0/80=080/110=1110/140=2140/170=3170/300=4labeldefineabcdf0F1D2C3B4Alabelvaluesgradeabcdf9labeldataApplyalabeltoadatasetorder
19、OrderthevariablesinadatasetlabelvariableApplyalabeltoavariablegenerateCreatesanewvariablereplaceReplacesonevaluewithanothervaluerecodeRecodethevaluesofavariableLabelvaluesApplyvaluelabelstoavariablelabeldefineDefineasetofalabelsforthelevelsofacategoricalvariablenotesApplynotestothedatafileegenExtend
20、edgenerate-hasspecialfunctionsthatcanbeusedwhencreatinganewvariablesaveStorethedatasetcurrentlyinmemoryondiskinStatadataformat为了记忆变量的意义为何,我们还可以利用note的方式来记录变量。指令如下:notesrace: valuesofracecodedas5wererecodedtobemissingnotes(叫出note的指令)另外,介绍一些利用公式来产生变量的指令。egenzread=std(read)summarizezreadlistreadzreadin
21、1/10egenrmean=mean(read),by(ses)listreadsesrmeanin1/10egenmread=median(read),by(prog)listreadprogmreadin1/10最后,我们可以将以上的执行结果储存下来。指令如下:savesample5-1(存成另一個檔)savesample4-1(取代原來的sample4-1)现在亦将数据修饰的相关指令整理成下表。六、管理数据(Managingdata)10在本节中,我们将进一步介绍如何将数据作一些特殊的处理,例如:保留所欲分析的数据、删除多余的数据或是将两份数据结合等等。假设我们只想针对部分的数据进行处理
22、,而又想保留原始资料时,则有以下两种方法可进行:1、另存新檔:亦即将所欲分析的部分数据储存在另一个档案中。例如:我们只针对read成绩大于或是等于60分的学生进行分析,则可利用下面的指令来筛选。keepifread=60summarizesavesample6-1Note:当只要保留某些变量时,则利用指令keep。例如:keepreadwrite。2、直接处理:亦即在原始数据上进行分析。承上例,指令输入如下:preservedropifread60summarizerestoreNote:若要删除某些变量时,则利用指令drop。例如:dropreadwrite。接下来,我们介绍如何将两笔数据结
23、合在一起。数据的结合主要可以分为两种,水平合并和垂直合并。前者是指变量的增加;后者则是指样本数的增加。说明如下:1、水平合并usesampleh1appendusingsampleh22、垂直合并:usesamplev1sortidsavesamplev1,replaceusesamplev2,clearsortidsave,replaceusesamplev1mergeidusingsamplev211keepifKeepobservationsifconditionismetdropifDropobservationsifconditionismetkeepKeepvariables(dr
24、oppingothers)dropDropvariables(keepingothers)appendusingAppendadatafiletocurrentfilesortSortobservationsmergeMergeadatafilewithcurrentfileNote:在垂直合并前要记得先sort。最后,我们将数据修饰的相关指令整理成下表。七、资料分析透过前面几节的介绍,应该对于STATA的指令和使用方法有了基本的认识。现在,我们开始说明如何利用STATA来处现统计上的问题以及计量方面的模型。1、检定:我们利用下面的例子来示范如何进行统计上的检定工作。sample4-1:tte
25、stwrite=60ttestwrite,by(gender)ttestwrite,by(gender)unequalsample7-1:ttestbefore=after2、回归在执行回归分析时所使用的指令为regress。cde:sampleusesample7-2regressgrowthlnrlp84lnempoclnempcr4lnrdoc另外,当存在heterogeneity of variance的问题时,可在后面加上robust;另外,若是不想放入截距项时,可在后面加上noconstant。若欲得到残差值,可输入以下指令:predicte,residual123、二元选择模型在
26、执行二元选择模型时所使用的程序写法与执行回归分析时相同,只是所使用的指令不同。在logit模型时为logit;在progit模型时为progit。clearusesample7-3logitocrlpemptotrlp2emptot2rlpemplnrdlstatlogitocrlpemptotrlp2emptot2rlpemplnrd,orprobitocrlpemptotrlp2emptot2rlpemplnrdlstatdprobitocrlpemptotrlp2emptot2rlpemplnrd4、Treatmenteffectmodel原则上,STATA在处理计量模型时,格式上大都一
27、致,亦即指令被解释变量解释变量的输入型式。我们再举一个计量模型来说明,例如:在有关自我选择的问题时,为了考虑内生性的情形,计量学家提出了一个Treatmenteffectmodel,其指令的撰写如下:clearusesample7-2treatreggrowthlnrlp84lnempoclnemplnrdcr4,treat(oc=rlp84emptot rlp842emptot2rlpempcr4lnrd)treatreggrowthlnrlp84lnempoclnemplnrdcr4,treat(oc=rlp84emptot rlp842emptot2rlpempcr4lnrd)two由上述可知,STATA在使用上真的相当方便、容易,尤其对于初学者而言,更是一个相当值得推荐的软件包。最后,整理一些STATA的相关网站以供参考:http:/www.ats.ucla.edu/stat/stata/default.htm
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1