stata常用命令模板
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
stata 常用命令
(2012-07-29 17:22:25)
转载▼
分类:stata
标签:
杂谈
save命令
FileSave As
例1. 表1.为某一降压药临床试验数据,试从键盘输入Stata,并保存为Stata格式文件。STATA数据库的维护
排序
SORT 变量名1 变量名2 ……
变量更名
rename 原变量名新变量名
STATA数据库的维护
删除变量或记录
drop x1 x2 /* 删除变量x1和x2
drop x1-x5 /* 删除数据库中介于x1和x5间的所有变量(包括x1和x5)
drop if x<0 /* 删去x1<0的所有记录
drop in 10/12 /* 删去第10~12个记录
drop if x==. /* 删去x为缺失值的所有记录
drop if x==.|y==. /* 删去x或y之一为缺失值的所有记录
drop if x==.&y==. /* 删去x和y同时为缺失值的所有记录
drop _all /* 删掉数据库中所有变量和数据
STATA的变量赋值
用generate产生新变量
generate 新变量=表达式
generate bh=_n /* 将数据库的内部编号赋给变量bh。
generate group=int((_n-1)/5)+1 /* 按当前数据库的顺序,依次产生5个1,5个2,5个 3……。直到数据库结束。
generate block=mod(_n,6) /* 按当前数据库的顺序,依次产生1,2,3,4,5,0。generate y=log(x) if x>0 /* 产生新变量y,其值为所有x>0的对数值log(x),当x<=0时,用缺失值代替。
egen产生新变量
set obs 12
egen a=seq() /*产生1到N的自然数
egen b=seq(),b(3) /*产生一个序列,每个元素重复#次
egen c=seq(),to(4) /*产生多个序列,每个序列从1到#
egen d=seq(),f(4)t(6) /*产生多个序列,每个序列从#1到#2
encode 字符变量名,gen(新数值变量名)
作用:将字符型变量转化为数值变量。
STATA数据库的维护
保留变量或记录
keep in 10/20 /* 保留第10~20个记录,其余记录删除
keep x1-x5 /* 保留数据库中介于x1和x5间的所有变量(包括x1和x5),其余变量删除
keep if x>0 /* 保留x>0的所有记录,其余记录删除
STATA数据库的维护
替换已存在的变量值
replace 变量=表达式
replace bolck=6 if block==0 /* 将block=0的数全部替换为6。
replace z=. if z<0 /* 将所有小于0的z值用缺失值代替。
replace age = 25 in 17 /* 将第17条记录中的变量age替换为25。
for var x* : replace X=0 if X==. /* 将所有第一个字母为x的变量替换为0,如果该变量的值为缺失值
纵向连接数据库
Ex3-3.dta:
x0 x1
1. 3550 2450
2. 2000 2400
3. 3000 1800
4. 3950 3200
5. 3800 3250
use "E:\教学\上机\ex3-2.dta", clear
l
x0 x1 g
1. 2450 1450 2
2. 2100 2400 2
3. 2300 3800 2
4. 1590 4200 2
append using E:\教学\上机\ex3-3.dta
l
x0 x1 g
1. 2450 1450 2
2. 2100 2400 2
3. 2300 3800 2
4. 1590 4200 2
5. 3550 2450 .
6. 2000 2400 .
7. 3000 1800 .
8. 3950 3200 .
9. 3800 3250 .
横向联接数据库
Ex3-5.dta:
bh y0 y1 x0
1. 1 35 79.2 2
2. 3 45 47.4 8
3. 4 52 3
4.6 6
4. 6 66 28.0 9
命令
. drop _all
. use E:\教学\MPH上机\ex3-5.dta
. sort bh
. save "E:\教学\MPH上机\ex3-5.dta",replace
file E:\教学\MPH上机\ex3-5.dta saved
. use E:\教学\MPH上机\ex3-4.dta
. sort bh
. merge bh using E:\教学\MPH上机\ex3-5.dta
结果
bh x0 x1 y0 y1 _merge
1. 1 12 24 35 79.2 3
2. 2 15 26 . . 1
3. 3 16 49 45 47.4 3
4. 4 18 57 52 34.6 3
5. 5 20 68 . . 1
6. 6 9 . 66 28 2
列数据接龙
Stack 变量名,into(新变量名)|group(#) [clear wide]
示例
统计描述及区间估计
定量资料的一般描述
均数、标准差、百分位数、中位数
summarize [变量名] [, detail ]
统计描述及区间估计
百分位数
centile [变量名] [, centile(# [# ...]) cci normal meansd level(#) ] 统计描述及区间估计
定性资料的一般描述
按照分类变量给出频数和构成比
tabulate 变量名