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
unequal  1.     2450      1450         2
  2.     2100      2400         2
  3.     2300      3800         2
  4.     1590      4200         2
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       34.6         6
  4.        6        66       28.0         9
命令
.
drop _all
. sort bh
. save "E:\教学\MPH上机\ex3-5.dta",replace
file E:\教学\MPH上机\ex3-5.dta saved
. sort bh

结果
           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)
统计描述及区间估计
可信区间的估计
ci  变量  [, level(#) binomial poisson exposure(观察数变量) by(分组变量) total ]
cii  观察数 均数 标准差 [, level(#) ]                 
level(#)               /* 指定可信度,缺失时为95(%)
by(分组变量)        /* 指定按分组变量分别估计均数的可信区间
total                    /* 指定除按分组变量估计可信区间外,还对整个数据估计,仅用于指定了by(分组变量)时
. use c:\mydata\ex2
. sort group
 /* 在用by(分组变量)前,必须对分组变量排序
. ci x1 x2, by(group)
STATA的作图
作图命令GRAPH
graph    [变量名] [, 图形类型 通用选择项 特殊选择项]
图形类型
histogram /* 直方图,为缺省值。
oneway /* 一维散点图
twoway /* 二维散点图、线图
matrix /* 二维散点图阵
bar /* 条图、百分条图
pie /* 圆(饼)图
box /* 箱式图
star /* 星形图
STATA的作图
作图命令GRAPH
常用选项
bin(#)           /* 将数据分几组,缺省为5。
freq     /* 指定纵轴用频数表示,否则为频率。
normal /* 给直方图加上相应正态曲线。
xlab/ylab/[(#,……,#)] /*指定坐标轴的界点。
b2/l2[(“字符串”)] /*指定坐标轴的副标题。
STATA的作图
如何利用STATA绘制频数分布图?
     
    例   130名14岁女孩身高资料。
    gra x,bin(10) freq normal xlab(124,128,132,136,140,144,148,152,156,160,164) ylab(5,10,15,20,25,30,35,40)
  数值变量资料的描述
均数、几何均数、中位数、百分位数
极差、四分位数间距、方差、标准差 
    变异系数
对称分布   均数±标准差
偏态分布   中位数±四分位数间距
数值变量资料的描述
means  [变量名]
summarize   [变量名]  [, detail ]
centile [变量名]  [, centile(#) ] 其他选项
detail         /*   详细描述,缺失时为简单描述
centile(#)  /*   指定需要计算的百分位数
某市1997年12岁男童120人的身高(cm)资料如下
sum  x
sum x,d
sum x if x<140
sum x if x<140,d
centile x
centile x,centile(25,50,75)

有五份血清的抗体效价为
   1:10, 1:20, 1:40, 1:80, 1:160,
   描述其抗体滴度的平均水平。

means  x
STATA的作图
作图命令graph    简写gra
gra    [变量名] [, 图形类型 通用选择项 特殊选择项]
图形类型
histogram /* 直方图
oneway /* 一维散点图
twoway /* 二维散点图、线图
matrix /* 二维散点图阵
bar  /* 条图、百分条图
pie            /* 圆(饼)图
box            /* 箱式图
star  /* 星形图


直方图
数值变量资料的统计分析
样本均数与总体均数比较的t检验
配对设计 t检验
成组设计t 检验
方差齐性检验
样本均数与总体均数比较的t检验
ttest  变量名= #val
ttesti  #obs  #mean  #sd  #val

问题:
统计量与参数不同的两种可能
其一:抽样误差
              (偶然的、随机的、较小的)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。