STATA最常用命令大全

  • 格式:doc
  • 大小:49.00 KB
  • 文档页数:9

下载文档原格式

  / 26
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

stata

save命令

FileSave 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 变量名

例2. 有三组(group)患者,男女(sex)若干人,sex=1表示男性,sex=0表示女性。测得其血红蛋白浓度(x1,%)和红细胞计数(x2,万/mm3),资料存入c:\mydata\ex2.dta。试对其进行描述。

见ex5-2

. use c:\mydata\ex2

. tab group

. tab sex

. tab group, sum(x1)

. tab group, sum(x2)

统计描述及区间估计

可信区间的估计