文档库 最新最全的文档下载
当前位置:文档库 › stata指令

stata指令


第二章

use format,clear //打开format文件
list //按照旧的显示格式列举数据
rename var1 make //改变变量名var1到make,以下类似
label data “1978 Automobile Data” ///为整个数据添加标签说明这个数据是关于1978汽车的数据
label variable make “Make and Model”///为make变量添加标签
describe///描述文件数据详情
codebook make price///描述变量make和price的内容
cd ///查看当前路径
save auto,replace///保存auto文件,覆盖原来那个
gen eudc2=educ^2//生成educ的平方,并命名为educ2。后面可以加条件if
replace fem_educ=educ if female==1 ///当female=1时,把educ复制给fem_educ
round(变量名)///取整
gen educat=0 //首先生成一个赋值为0的新变量educat
replace educat=1 if educ==4 | educ==5 | educ==6 //将educ为4或者5或者6的观测值的educat变量的值改为1,“|”表明或者
replace educat=3 if educ>=10 & educ<=12 //将educ在10到12之间的观测值的educat变量的值改为3
mean(变量名)///取平均值
sum 变量1 变量2 变量3 ····///查看变量的平均值,极值等等
list higheduc educ in 1/20 // 列举前二十个观测值,以对比这两个变量
group函数
encode 变量名///字符型变量到数值型变量
/mnt/sdcard/backupandrestore/backup/201407
decode 变量名///数值型变量到字符型变量
recode x2 (1 2 = 1) (3 = 2) (4/7 = 3), gen(nx2) //改变x2的赋值,由1和2变为1,将3改为2,将4到7改为3并将新的结果保存在nx2
tabulate 变量名///显示该变量所有数据所占的比例
use autotech, clear ///将两个数据表格合在一起
merge make using autocost///成为一个表格
append using 数据表格名 //将数据加载在先前打开的数据之后
keep if foreign == 0 //保存foreign == 0 的观测值
keep 变量1 变量2 变量3 ····///保留变量1,2, 3
sort family_id //对family_id进行排序


第三章
scatter le year // 绘制散点图,位于scatter后的第一个变量是y轴的变量,第二个变量是x轴变量
graph export p301.png,replace///将图像保存输出
scatter le year, connect(l) //表示以直线的方式连接相邻的两个点 connect(l)也可用c(l)
scatter le year, connect(l) msymbol(i) //表明散点的显示方式为"看不见"
scatter educ exper wage,msymbol(O X p) mcolor(green blue black) msize(medium medium small)///绘制educ与wage以及exper与wage的散点图,要求散点图形状前者选择实心圆,后者选择大写字母X;散点颜色前者选择绿色,后者选择蓝色;散点大小均选择中等。三个括弧里面的第三个变量都是无意义的
mlabel(country) mlabpos(9) //表示添加国家名称country作为标签,将所有标签移动至九点钟方向,即数据点的左方
mlabv(3)///指定每个散点的位置在本来基础上的三点钟方向
xscale(range(a b)) //表示X轴的范围在ab之间
scatter lexp gn

ppc, xscale(log) //xscale(log) 表明x轴使用去了对数之后的尺度
yscale(rev) //yscale(rev) 表示y轴上使用逆向坐标,即是从小到大排列
yscale(off)///表示完全关掉所有与坐标相关的内容
yscale(noline) xscale(noline)///表示去掉x轴和y轴坐标线
scatter mpg weight, ylabel(#5) xlabel(#5) //xlabel(#5) 表示x轴大约有5个刻度,ylabel(#5)表示y轴大约有5个刻度,Stata会根据自己的原则进行适当的调整
ylabel(10(5)45) xlabel(1500 2000 3000 4000 4500 5000) //ylabel(10(5)45)表示y轴刻度从10开始到45结束,步长为5;xlabel(1500 2000 3000 4000 4500 5000)表示x轴刻度为1500……5000
ymlabel(##5) xmtick(##10) //ymlabel(##5)表示y轴每两个主刻度之间有5个小刻度标识,xmtick(##10)表示x轴每两个主刻度之间有10个小刻度
legend(on)///标识打开图例
scatter mpg weight || lfit mpg weight ///画出散点图,再做出回归线
label var gnppc "GNP per capita (thousands of dollars)" ///把gnppc的标签设置为GNP per capita (thousands of dollars)
twoway (scatter mpg weight) (scatter price weight,yaxis(2))///画两个坐标


第四章
quietly regress mpg weight //以mpg为因变量,weight为自变量做回归,quietly要求不显示回归的结果
predict hat //得到预测值hat
predict biaozhuncha, stdf //得到预测的标准差 变量名为biaozhuncha,stdf是符号,不能改
line 变量1 变量2///表示画出变量1 与变量2 的曲线标绘图
lfit 变量1 变量2///表示画出变量1 与变量2 的一次回归拟合线
qfit 变量1 变量2///表示画出变量1 与变量2 的二次回归拟合线
lowess 变量1 变量2///表示画出变量1 与变量2 的lowess修匀拟合图


第五章
sum ///查看变量详情,后面可加 ,detail 查看更详细的数据
separator(#)///每#个变量画一条分界线,默认为separator(5)

mean 平均数 count / n 观测值数目
sum 加总 max/ min 最大值、最小值
range 极差 sd 标准差
var 方差 cv 变异系数 (sd/mean)
semean 平均标准误 (sd/sqrt(n))
skewness偏度 kurtosis 峰度
median 中位数 p# #%百分位数
iqr 四分位数间距(p75 - p25)
q 等价于写p25 p50 p75

tabstat wage lwage,stat(count mean p50 sd skew kurt)
tabstat 变量...............,stat(数目 平均值 标准差 )///在后面加上 ,col(stat) 可以改变显示行列,行变列,列变行
graph box 变量名///绘制箱线图,纵向
graph hbox wage, over(female)///绘制箱线图,横向,根据female变量值为0或1画出两个不同的箱线图
sktest 变量名///对该变量进行正态检验
ladder 变量名///对该变量的九种运算(平方、开放、log等)进行正态检验
qladder 变量名///做出运算后的九种图的拟合图,进行对比
gladder 变量名///做出运算后的九种图的直方图

,进行对比


第六章
table命令可以报告的统计量
freq 频数
mean 平均数
sd 标准差
semean 标准误 (sd/sqrt(n))
sum 总和
count、n 观测值个数
max 最大值
min 最小值
median 中位数
p# 各种百分位数
iqr IQR四分位距
table rep78, contents(n mpg mean mpg sd mpg median mpg) //contents选项要求表中显示各种类型汽车的行驶里程数(mpg)的相关统计量,包括mpg的观测值个数、平均数、标准差和中位数。
table foreign rep78, c(mean mpg) format(%9.2f) center //该命令要求Stata以纵轴为foreign,横轴为rep78,表格内容为mpg均值的方式生成二维列联表,format(%9.2f)要求显示的数字格式有两位小数,center要求表格内容中间对齐。
table foreign rep78, c(mean mpg) format(%9.2f) center row col //row和col选项可以在输出的表格中添加了一列和一行,分别对行和列进行了加总
table workplace smokes race [fw=pop], c(mean prob) format(%9.3f) sc //使用[fw=pop]告诉Stata每个观测值代表的个体个数,使用c(mean prob) 告诉Stata表中内容是prob这个变量的均值,format(%9.3f)规范了表格内容的显示,sc要求增加一个加总的列。
table workplace smokes race [fw=pop], by(sex) c(mean prob) format(%9.3f) //加入了by(sex)形成四维列联表。
tabulate 变量名 /// 创建一维频数表 tabulate还可以用两个变量创建二维频数表
使用tabulate可先用group将一个变量分成若干组,再使用。如:
sort 变量1
gen 变量2=group(n)///n可为1234,即组数
tabulate 变量2 变量3


第七章
ttest 变量=n,level(m)///t检验变量是否等于n(n为检验值),m为置信水平,默认为95
ttest 变量1 变量2///检验变量1和2的均值是否相等
ttest wage,by(gender) ///*检验工资是否会因性别不同而存在差异
oneway response_var factor_var [if] [in] [weight] [, options]///单因素方差分析oneway用于比较多组样本的均数是否相同,并假定:每组的数据服从正态分布,具有相同的方差,且相互独立
[, options]如下:
bonferroni bonferroni 多重比较检验
scheffe scheffe 多重比较检验
sidak sidak 多重比较检验
tabulate 产生列表
[no]means [不]显示均值
[no]standard [不]显示标准差
[no]freq [不]显示频数
[no]obs [不]显示观测个数
noanova 不显示方差分析表
nolabel 以数值形式显示,而不是以标签形式
wrap 列表不隔开
missing 将缺失值作为一类
多因素方差分析处理的就是两个或者更多x分类变量的情况。在Stata中用命令anova实现,其基本命令格式如下:
anova response_var [if] [in] [weight] [,options] ///options 与上面相




第八章
reg指令下的结果:
SS是平方和,它所在列的三个数值分别为回归误差平方和(SSE)、残差平方和(SSR)及总体平方和(SST),即分别为Model、Residual和Total相对应的数值。
df(degree of freedom)为自由度。
MS为SS与df的比值,与SS对应,SS是平方和,MS是均方,是指单位自由度的平方和。
coef.表明系数的,因为该因素t检验的P值是0.000,所以表明有很强的正效应,认为所检验的变量对模型是有显著影响的。

regress 变量1 2 3 4 5.。。///表示对因变量1 做过于自变量2345的回归分析
predict 变量8///表示将因变量的预测值保存在变量8中
predict 变量名,res /// res表示残差值,保存在变量名中
test 自变量1=自变量2///检验两个变量系数之间的关系
sw regress hours educ exper expersq kidslt6 kidsge6 nwifeinc motheduc huseduc, pr(.1)///逐步做回归,剔除掉置信区间在1-0.1=0.9置信区间以外的变量
vif ///检验多重共线性
一般来说,判断多重共线性的标准是(两个标准必须同时满足):
最大的vif大于10;
平均的vif大于1
ovtest ///检验内生性
处理内生性——工具变量
ivreg wage age kidslt6 kidsge6 expersq exper (educ=motheduc) /// motheduc为工具变量
hettest ///异方差的检验
reg wage educ age kidslt6 kidsge6 exper expersq, robust ///异方差的处理,后面加上robust
sureg (被解释变量1 解释变量1 解释变量2 。。。)(被解释变量2 解释变量1 解释变量2 。。。)///使用sureg命令同时估计两个方程的系数,在输入sureg后分别在之后的两个()中输入两个方程的因变量和自变量。
reg3 (hours lwage educ age kidslt6 kidsge6 nwifeinc) (lwage hours educ exper expersq)
//使用reg3命令同时得到教育和工资的对数的联立方程组的系数

xtset 横截面 时间///面板数据分析时,先用xtset进行维度设置
xtreg 被解释变量 解释变量1 解释变量2.。。///用随机效应方法处理面板数据,后面加上,re也可以
xtreg 被解释变量 解释变量1 解释变量2 ,fe///用固定效应方法处理面板数据


第十章
probit 被解释变量 解释变量1,2,3///二值响应模型——使用probit命令 ,,被解释变量的取值只有0,1
tobit hours nwifeinc educ exper expersq age kidslt6 kidsge6 , ll(0) ///使用tobit命令估计教育(educ)、经验(exper)、经验的平方(expersq)、年龄(age)、小于6岁孩子的个数(kidslt6)、6到18岁孩子的个数(kidsge6)、除女性外的家庭收入(nwifeinc)对女性工作的时间的影响,使用ll()选项设置下界
heckman lwage educ exper expersq, select( inlf =educ exper expersq nwifeinc age kidslt6 kidsge6) twostep///我们估计教育、经验、经验的平方对工资对数的影响,选择方程是女性是否在劳动力市场上,采

用两阶段估计(twoway)。


第十一章
见课件吧

第十四章
Log文件可以通过log命令创建。例如,为了创建一个名为example.txt的log文件,用户可以在命令框中键入:
log using example.txt , text replace
写完之后可用 log close来关闭当前文件
local 变量 数值///定义局部变量
local 宏名:变量1 2 3 4 ///定义局部如:local country:US UK RE FR
display “要显示的内容”


相关文档