stata常用.docx

上传人:b****5 文档编号:29930208 上传时间:2023-08-03 格式:DOCX 页数:26 大小:25.44KB
下载 相关 举报
stata常用.docx_第1页
第1页 / 共26页
stata常用.docx_第2页
第2页 / 共26页
stata常用.docx_第3页
第3页 / 共26页
stata常用.docx_第4页
第4页 / 共26页
stata常用.docx_第5页
第5页 / 共26页
点击查看更多>>
下载资源
资源描述

stata常用.docx

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

stata常用.docx

stata常用

调整变量格式:

formatx1%——将x1的列宽固定为10,小数点后取三位

formatx1%——将x1的列宽固定为10,有效数字取三位

formatx1%——将x1的列宽固定为10,采用科学计数法

formatx1%——将x1的列宽固定为10,小数点后取三位,加入千分位分隔符

formatx1%——将x1的列宽固定为10,有效数字取三位,加入千分位分隔符

formatx1%——将x1的列宽固定为10,有效数字取三位,加入千分位分隔符,加入“-”表示左对齐

合并数据:

use"C:

\DocumentsandSettings\xks\桌面\",clear

mergeusing"C:

\DocumentsandSettings\xks\桌面\"

——将1999和2006的数据按照样本(observation)排列的自然顺序合并起来

use"C:

\DocumentsandSettings\xks\桌面\",clear

mergeidusing"C:

\DocumentsandSettings\xks\桌面\",uniquesort

——将1999和2006的数据按照唯一的(unique)变量id来合并,在合并时对id进行排序(sort)

建议采用第一种方法。

对样本进行随机筛选:

sample50

在观测案例中随机选取50%的样本,其余删除

sample50,count

在观测案例中随机选取50个样本,其余删除

查看与编辑数据:

browsex1x2ifx3>3(按所列变量与条件打开数据查看器)

editx1x2ifx3>3(按所列变量与条件打开数据编辑器)

数据合并(merge)与扩展(append)

merge表示样本量不变,但增加了一些新变量;append表示样本总量增加了,但变量数目不变。

one-to-onemerge:

数据源自statatutorial中的exampw1和exampw2

第一步:

将exampw1按v001~v003这三个编码排序,并建立临时数据库tempw1

clear

use"t:

\statatut\"

su——summarize的简写

sortv001v002v003

savetempw1

第二步:

对exampw2做同样的处理

clear

use"t:

\statatut\"

su

sortv001v002v003

savetempw2

第三步:

使用tempw1数据库,将其与tempw2合并:

clear

usetempw1

mergev001v002v003usingtempw2

第四步:

查看合并后的数据状况:

ta_merge——tabulate_merge的简写

su

第五步:

清理临时数据库,并删除_merge,以免日后合并新变量时出错

erase

erase

drop_merge

数据扩展append:

数据源自statatutorial中的fac19和newfac

clear

use"t:

\statatut\"

taregion

appendusing"t:

\statatut\newfac"

taregion

合并后样本量增加,但变量数不变

茎叶图:

stemx1,line

(2)(做x1的茎叶图,每一个十分位的树茎都被拆分成两段来显示,前半段为0~4,后半段为5~9)

stemx1,width

(2)(做x1的茎叶图,每一个十分位的树茎都被拆分成五段来显示,每个小树茎的组距为2)

stemx1,round(100)(将x1除以100后再做x1的茎叶图)

直方图

采用auto数据库

histogrammpg,discretefrequencynormalxlabel(1

(1)5)

(discrete表示变量不连续,frequency表示显示频数,normal加入正太分布曲线,xlabel设定x轴,1和5为极端值,

(1)为单位)

histogramprice,fractionnorm

(fraction表示y轴显示小数,除了frequency和fraction这两个选择之外,该命令可替换为“percent”百分比,和“density”密度;未加上discrete就表示将price当作连续变量来绘图)

histogramprice,percentby(foreign)

(按照变量“foreign”的分类,将不同类样本的“price”绘制出来,两个图分左右排布)

histogrammpg,discreteby(foreign,col

(1))

(按照变量“foreign”的分类,将不同类样本的“mpg”绘制出来,两个图分上下排布)

histogrammpg,discretepercentby(foreign,total)norm

(按照变量“foreign”的分类,将不同类样本的“mpg”绘制出来,同时绘出样本整体的“总”直方图)

二变量图:

graphtwowaylfitpriceweight||scatterpriceweight

(作出price和weight的回归线图——“lfit”,然后与price和weight的散点图相叠加)

twowayscatterpriceweight,mlabel(make)

(做price和weight的散点图,并在每个点上标注“make”,即厂商的取值)

twowayscatterpriceweight||lfitpriceweight,by(foreign)

(按照变量foreign的分类,分别对不同类样本的price和weight做散点图和回归线图的叠加,两图呈左右分布)

twowayscatterpriceweight||lfitpriceweight,by(foreign,col

(1))

(按照变量foreign的分类,分别对不同类样本的price和weight做散点图和回归线图的叠加,两图呈上下分布)

twowayscatterpriceweight[fweight=displacement],msymbol(oh)

(画出price和weight的散点图,“msybol(oh)”表示每个点均为中空的圆圈,[fweight=displacement]表示每个点的大小与displacement的取值大小成比例)

twowayconnectedy1time,yaxis

(1)||y2time,yaxis

(2)

(画出y1和y2这两个变量的时间点线图,并将它们叠加在一个图中,左边“yaxis

(1)”为y1的度量,右边“yaxis

(2)”为y2的)

twowayliney1time,yaxis

(1)||y2time,yaxis

(2)

(与上图基本相同,就是没有点,只显示曲线)

graphtwowayscattervar1var4||scattervar2var4||scattervar3var4

(做三个点图的叠加)

graphtwowaylinevar1var4||linevar2var4||linevar3var4

(做三个线图的叠加)

graphtwowayconnectedvar1var4||connectedvar2var4||connectedvar3var4

(叠加三个点线相连图)

更多变量:

graphmatrixabcy

(画出一个散点图矩阵,显示各变量之间所有可能的两两相互散点图)

graphmatrixabcd,half

(生成散点图矩阵,只显示下半部分的三角形区域)

用auto数据集:

graphmatrixpricempgweightlength,halfby(foreign,totalcol

(1))

(根据foreign变量的不同类型绘制price等四个变量的散点图矩阵,要求绘出总图,并上下排列】=具)

其他图形:

graphboxy,over(x)yline(.22)

(对应x的每一个取值构建y的箱型图,并在y轴的处划一条水平线)

graphbar(mean)y,over(x)

对应x的每一个取值,显示y的平均数的条形图。

括号中的“mean”也可换成median、sum、sd、p25、p75等

graphbara1a2,over(b)stack

(对应在b的每一个取值,显示a1和a2的条形图,a1和a2是叠放成一根条形柱。

若不写入“stack”,则a1和a2显示为两个并排的条形柱)

graphdot(median)y,over(x)

(画点图,沿着水平刻度,在x的每一个取值水平所对应的y的中位数上打点)

qnormx

(画出一幅分位-正态标绘图)

rcharta1a2a2

(画出质量控制R图,显示a1到a3的取值范围)

简单统计量的计算:

ameansx

(计算变量x的算术平均值、几何平均值和简单调和平均值,均显示样本量和置信区间)

meanvar1[pweight=var2]

(求取分组数据的平均值和标准误,var1为各组的赋值,var2为每组的频数)

summarizeyx1x2,detail

(可以获得各个变量的百分比数、最大最小值、样本量、平均数、标准差、方差、峰度、偏度)

***注意***

stata中summarize所计算出来的峰度skewness和偏度kurtosis有问题,与ECELL和SPSS有较大差异,建议不采用stata的结果。

summarizevar1[aweight=var2],detail

(求取分组数据的统计量,var1为各组的赋值,var2为每组的频数)

tabstatX1,stats(meannqmaxminsdvarcv)

(计算变量X1的算术平均值、样本量、四分位线、最大最小值、标准差、方差和变异系数)

概率分布的计算:

(1)贝努利概率分布测试:

webusequick

bitestquick==,detail

(假设每次得到成功案例‘1’的概率等于,计算在变量quick所显示的二项分布情况下,各种累计概率和单个概率是多少)

bitesti10,3,,detail

(计算当每次成功的概率为时,十次抽样中抽到三次成功案例的概率:

低于或高于三次成功的累计概率和恰好三次成功概率)

(2)泊松分布概率:

displaypoisson(7,6)

.

(计算均值为7,成功案例小于等于6个的泊松概率)

displaypoissonp(7,6)

.

(计算均值为7,成功案例恰好等于6个的泊松概率)

displaypoissontail(7,6)

.

(计算均值为7,成功案例大于等于6个的泊松概率)

(3)超几何分布概率:

displayhypergeometricp(10,3,4,2)

.3

(计算在样本总量为10,成功案例为3的样本总体中,不重置地抽取4个样本,其中恰好有2个为成功案例的概率)

displayhypergeometric(10,3,4,2)

.

(计算在样本总量为10,成功案例为3的样本总体中,不重置地抽取4个样本,其中有小于或等于2个为成功案例的概率)

检验极端值的步骤:

常见命令:

tabulate、stem、codebook、summarize、list、histogram、graphbox、graghmatrix

step1.用codebook、summarize、histogram、graphboxs、graphmatrix、stem看检验数据的总体情况:

codebookyx1x2

summarizeyx1x2,detail

histogramx1,norm(正态直方图)

graphboxx1(箱图)

graphmatrixyx1x2,half(画出各个变量的两两x-y图)

stemx1(做x1的茎叶图)

可以看出数据分布状况,尤其是最大、最小值

step2.用tabulate、list细致寻找极端值

tabulatecodeifx1==极端值(作出x1等于极端值时code的频数分布表,code表示地区、年份等序列变量,这样便可找出那些地区的数值出现了错误)

listcodeifx1==极端值(直接列出x1等于极端值时code的值,当x1的错误过多时,不建议使用该命令)

listin-20/l(l表示lastone,-20表示倒数第20个样本,该命令列出了从倒数第20个到倒数第一个样本的各变量值)

step3.用replace命令替换极端值

replacex1=ifx1==极端值

去除极端值:

keepify<1000

dropify>1000

对数据排序:

sortx

gsort+x

(对数据按x进行升序排列)

gsort-x

(对数据按x进行降序排列)

gsort-x,generate(id)mfirst

(对数据按x进行降序排列,缺失值排最前,生成反映位次的变量id)

对变量进行排序:

orderyx3x1x2

(将变量按照y、x3、x1、x2的顺序排列)

生成新变量:

genlogx1=log(x1)(得出x1的对数)

genx1`=exp(logx1)(将logx1反对数化)

genr61_100=1ifrank>=61&rank<=100(若rank在61与100之间,则新变量r61_100的取值为1,其他为缺失值)

replacer61_100ifr61_100!

=1(“!

=”表示不等于,若r61_100取值不为1,则将r61_100替换为0,就是将上式中的缺失值替换为0)

genabs(x)(取x的绝对值)

genceil(x)(取大于或等于x的最小整数)

gentrunc(x)(取x的整数部分)

genround(x)(对x进行四舍五入)

genround(x,y)(以y为单位,对x进行四舍五入)

gensqrt(x)(取x的平方根)

genmod(x,y)(取x/y的余数)

genreldif(x,y)(取x与y的相对差异,即|x-y|/(|y|+1))

genlogit(x)(取ln[x/(1-x)])

genx=autocode(x,n,xmin,xmax)(将x的值域,即xmax-xmin,分为等距的n份)

genx=cond(x1>x2,x1,x2)(若x1>x2成立,则取x1,若x1>x2不成立,则取x2)

sortx

gengx=group(n)(将经过排序的变量x分为尽量等规模的n个组)

egenzx1=std(x1)(得出x1的标准值,就是用(x1-avgx1)/sdx1)

egenzx1=std(x1),m(0)s

(1)(得出x1的标准分,标准分的平均值为0,标准差为1)

egensdx1=sd(x1)(得出x1的标准差)

egenmeanx1=mean(x1)(得出x1的平均值)

egenmaxx1=max(x1)(最大值)

egenminx1=min(x1)(最小值)

egenmedx1=med(x1)(中数)

egenmodex1=mode(x1)(众数)

egentotalx1=total(x1)(得出x1的总数)

egenrowsd=sd(x1x2x3)(得出x1、x2和x3联合的标准差)

egenrowmean=mean(x1x2x3)(得出x1、x2和x3联合的平均值)

egenrowmax=max(x1x2x3)(联合最大值)

egenrowmin=min(x1x2x3)(联合最小值)

egenrowmed=med(x1x2x3)(联合中数)

egenrowmode=mode(x1x2x3)(联合众数)

egenrowtotal=total(x1x2x3)(联合总数)

egenxrank=rank(x)(在不改变变量x各个值排序的情况下,获得反映x值大小排序的xrank)

数据计算器display命令:

displayx[12](显示x的第十二个观察值)

displaychi2(n,x)(自由度为n的累计卡方分布)

displaychi2tail(n,x)(自由度为n的反向累计卡方分布,chi2tail(n,x)=1-chi2(n,x))

displayinvchi2(n,p)(卡方分布的逆运算,若chi2(n,x)=p,那么invchi2(n,p)=x)

displayinvchi2tail(n,p)(chi2tail的逆运算)

displayF(n1,n2,f)(分子、分母自由度分别为n1和n2的累计F分布)

displayFtail(n1,n2,f)(分子、分母自由度分别为n1和n2的反向累计F分布)

displayinvF(n1,n2,P)(F分布的逆运算,若F(n1,n2,f)=p,那么invF(n1,n2,p)=f)

displayinvFtail(n1,n2,p)(Ftail的逆运算)

displaytden(n,t)(自由度为n的t分布)

displayttail(n,t)(自由度为n的反向累计t分布)

displayinvttail(n,p)(ttail的逆运算)

给数据库和变量做标记:

labeldata"~~~"(对现用的数据库做标记,"~~~"就是标记,可自行填写)

labelvariablex"~~~"(对变量x做标记)

labelvaluesxlabel1(赋予变量x一组标签:

label1)

labeldefinelabel11"a1"2"a2"(定义标签的具体内容:

当x=1时,标记为a1,当x=2时,标记为a2)

频数表:

tabulatex1,sort

tab1x1-x7,sort(做x1到x7的频数表,并按照频数以降序显示行)

tablec1,c(nx1meanx1sdx1)(在分类变量c1的不同水平上列出x1的样本量和平均值)

二维交互表:

auto数据库:

tablerep78foreign,c(nmpgmeanmpgsdmpgmedianmpg)centerrowcol

(rep78,foreign均为分类变量,rep78为行变量,foreign为列变量,center表示结果显示在单元格中间,row表示计算行变量整体的统计量,col表示计算列变量整体的统计量)

tabulatex1x2,all

(做x1和x2的二维交互表,要求显示独立性检验chi2、似然比卡方独立性检验lrchi2、对定序变量适用的等级相关系数gamma和taub、以及对名义变量适用的V)

tabulatex1x2,columnchi2(做x1和x2的二维交互表,要求显示列百分比和行变量和列变量的独立性检验——零假设为变量之间独立无统计关系)

tab2x1-x7,allnofreq(对x1到x7这七个变量两两地做二维交互表,不显示频数:

nofreq)

三维交互表:

byx3,sort:

tabulatex1x2,nofreqcolchi2(同时进行x3的每一个取值内的x1和x2的二维交互表,不显示频数、显示列百分比和独立性检验)

四维交互表:

tablex1x2x3,c(ferqmeanx1meanx2meanx3)by(x4)

tabstatX1X2,by(X3)stats(meannqmaxminsdvarcv)col(stats)

tabstatX1X2,by(X3)stats(meanrangeqsdvarcvp5p95median),[aw=X4](以X4为权重求X1、X2的均值,标准差、方差等)

ttestX1=1

countifX1==0

countifX1>=0

genX2=1ifX1>=0

corrx1x2x3(做x1、x2、x3的相关系数表)

swilkx1x2x3(用Shapiro-WilkWtest对x1、x2、x3进行正太性分析)

sktestx1x2x3(对x1、x2、x3进行正太性分析,可以求出峰度和偏度)

ttestx1=x2(对x1、x2的均值是否相等进行T检验)

ttestx1,by(x2)unequal(按x2的分组方式对x1进行T检验,假设方差不齐性)

sdtestx1=x2(方差齐性检验)

sdtestx1,by(x2)(按x2的分组方式对x1进行方差齐性检验)

聚类分析:

clusterkmeansyx1x2x3,k(3)

——依据y、x1、x2、x3,将样本分为n类,聚类的核为随机选取

clusterkmeansyx1x2x3,k(3)measure(L1)start(everykth)

——"start"用于确定聚类的核,"everykth"表示将通过构造三组样本获得聚类核:

构造方法为将样本id为1、1+3、1+3×2、1+3×3……分为一组、将样本id为2、2+3、2+3×2、2+3×3……分为第二组,以此类推,将这三组的均值作为聚类的核;"measure"用于计算相似性和相异性的方法,"L1"表示采用欧式距离的绝对值,也直接可采用欧式距离(L2)和欧式距离的平方(L2squared)。

PS:

这个方法所得的结果与SPSS所得结果相同。

sortc1c2(对c1和c2两个分类变量排序)

byc1c2:

regyx1x2x3(在c1、c2的各个水平上分别进行回归)

bysortc1c2:

regyx1x2x3ifc3=1(逗号前面相当于将上面两步骤合一,既排序又回归,逗号后面的“ifc3=1”表示只有在c3=1的情况下才进行回归)

stepwise,pr(.2):

regyx1x2x3(使用Backwardselection,去除P值大于时变量)

stepwise,pe(.2):

regyx1x2x3(使用forwardselection,去除P值小于时变量)

stepwise,pr(.2)pe(.01):

regyx1x2x3(使用backward-stepwis

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

当前位置:首页 > 外语学习 > 其它语言学习

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

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