楼主: yancheng54
11867 17

[下载]stata常用命令 [推广有奖]

  • 0关注
  • 1粉丝

已卖:24份资源

讲师

21%

还不是VIP/贵宾

-

威望
0
论坛币
21 个
通用积分
0.0600
学术水平
1 点
热心指数
0 点
信用等级
0 点
经验
23542 点
帖子
102
精华
0
在线时间
775 小时
注册时间
2007-9-15
最后登录
2014-5-5

楼主
yancheng54 发表于 2009-4-2 18:09:00 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
入门的,给新手们,别拍我
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Stata tata 常用命令 下载 命令 Stata

沙发
owen19860806 在职认证  发表于 2009-10-22 23:50:49
怎么看不到下不了
利己还是利他?

藤椅
snowzxy 发表于 2009-10-24 10:30:52
貌似没有噻~~~没发么?

板凳
dyh325 发表于 2009-10-25 18:41:37
确实什么都没有。。。

报纸
好想~~~ 发表于 2009-11-3 13:57:28
也不用这忽悠人吧  啥也没

地板
cpskl04 发表于 2009-11-4 12:57:31
不能吧。。

7
perceive 发表于 2009-11-4 22:37:10
怎么没看见链接?

8
l1t 发表于 2009-11-5 09:30:19
转载:stata常用命令  
转载stata常用命令 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       34.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)
统计描述及区间估计
可信区间的估计
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)

9
l1t 发表于 2009-11-5 09:31:01

有五份血清的抗体效价为
   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

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

其二:本质上的差别
                 (必然的、大于随机误差)

样本:某医生随机抽查10名某病患者的血红蛋白,求得其均数为12.59 (g/dl),标准差为1.632619 (g/dl) 。
问题:该病患者的平均Hb含量是否与正常人的平均Hb含量相同 (正常人的平均Hb含量为14.02 (g/dl)。
STATA 命令
ttest  变量名= #val
ttest         x   =14.02
STATA 结果
ttest x=14.02
One-sample t test
----------------------------------------------------------------------------
Variable |     Obs   Mean    Std. Err.   Std. Dev.   [95% Conf. Interval]
---------+------------------------------------------------------------------
       x |      10  12.59    .5162794    1.632619    11.42209    13.75791
----------------------------------------------------------------------------
Degrees of freedom: 9

                             Ho: mean(x) = 14.02

   Ha: mean < 14.02           Ha: mean ~= 14.02          Ha: mean > 14.02
       t =  -2.7698                t =  -2.7698              t =  -2.7698
   P < t =   0.0109          P > |t| =   0.0218          P > t =   0.9891



STATA 命令
ttesti   #obs  #mean     #sd       #val
     ttesti     10   12.59  1.632619  14.02


配对设计t检验
ttest  变量1=变量2

STATA 命令
ttest  x1=x2

STATA 结果
ttest x1=x2

Paired t test

-------------------------------------------------------------------
Variable |  Obs   Mean  Std. Err.   Std. Dev.  [95% Conf. Interval]
---------+---------------------------------------------------------
      x1 |  10  12.59  .5162794    1.632619    11.42209    13.75791
      x2 |  10  13.27  .3415813    1.080175    12.49729    14.04271
---------+---------------------------------------------------------    diff |  10 -.6799999.5204272   1.645735   -1.857288   .4972881
-------------------------------------------------------------------
                 Ho: mean(x1 - x2) = mean(diff) = 0

  Ha: mean(diff) < 0  Ha: mean(diff) ~= 0     Ha: mean(diff) > 0
    t =  -1.3066         t =  -1.3066           t =  -1.3066
    P < t = 0.1119       P > |t| = 0.2237       P > t = 0.8881

成组设计 t 检验
ttest  变量1=变量2, unpaired  [unequal]
ttest 变量,by(分组变量)[unequal]
ttesti  #obs1 #mean1 #sd1  #obs2 #mean2 #sd2  [,unequal]   

unpaired   表示非配对的,如不选就作配对t检验
unequal    表示假设两组方差不齐,如不选表示假设两组方差达到齐性
例(成组设计)
分别测得14例老年人煤饼病人及11例正常人的尿中17 酮类固醇排出量(mg/dl)如下,试比较两组的均数有无差别








STATA 命令
ttest x1=x2, unpaired
ttest x, by(g)
STATA 结果
ttest x1=x2,unp

Two-sample t test with equal variances
----------------------------------------------------------------------------
Variable |  Obs    Mean    Std. Err.   Std. Dev.   [95% Conf. Interval]
---------+------------------------------------------------------------------
      x1 |  14    4.377857       .3875    1.449892    3.540714       5.215
      x2 |  11    5.528182    .5232431    1.735401    4.362324     6.69404
---------+------------------------------------------------------------------
combined |  25       4.884    .3306453    1.653227    4.201582    5.566418
---------+------------------------------------------------------------------
    diff |        -1.150325     .636752              -2.467547    .1668972
----------------------------------------------------------------------------
Degrees of freedom: 23

                     Ho: mean(x1) - mean(x2) = diff = 0

     Ha: diff < 0               Ha: diff ~= 0              Ha: diff > 0
       t =  -1.8066                t =  -1.8066              t =  -1.8066
   P < t =   0.0420          P > |t| =   0.0839          P > t =   0.9580

两组资料间的方差齐性检验
sdtest 变量名1 = 变量名2
sdtest 变量,by(分组变量)
sdtesti  #obs1 #mean1 #sd1 #obs2     #mean2 #sd2
单因素方差分析及方差齐性检验
oneway 因变量  分组变量,[选择项]

noanova      /* 不打印方差分析表
missing       /* 将缺省值作为单独的一组
tabulate      /* 打印各组的基本统计量表   简写:t
scheffe       /* Scheffe法        简写:sch
Bonferroni  /* Bonferroni法   简写:bon
sidak       /* Sidak法           简写:si


  

各组均数两两比较

oneway  x  group,noanova sch

                         Comparison of var3 by group
                                  (Scheffe)
Row Mean-|
Col Mean |          1          2
---------+----------------------
       2 |      -.425
         |      0.426
         |
       3 |       -.91      -.485
         |      0.024      0.330

STATA软件及其应用-III
秩和检验和相关与回归分析
秩变换
配对资料的秩和检验;
两组资料的秩和检验;
多组资料的秩和检验;
直线相关分析;
等级相关分析;
直线回归分析;

秩变换
genrank   新变量= 原变量

egen        新变量=rank(原变量)
配对资料的秩和检验
signrank   变量1 = 变量2   [if 变量1!=变量2]


两组资料的秩和检验
ranksum  观察值变量,by(分组变量)
两组资料的秩和检验
两组资料的秩和检验
例3  用复方猪胆胶囊治疗老年性慢性支气管炎患者403例,疗效见第(1)~ (3)栏。问该药对此两型支气管炎疗效是否相同?

两组资料的秩和检验
expand   f
ranksum   x,by(g)
多组资料的秩和检验
kwallis   观察值变量,  by(分组变量)

多组资料的秩和检验
直线相关和回归分析
correlate    [变量名]
pwcorr        [变量名]  ,  [sig  star(#) ]
regress      因变量   自变量
predict      新变量 , [stdp]   [stdf]
   stdp                计算估计值的标准误  
     stdf                 估计预测值y的标准差
     sig                打印相关系数假设检验之     P值
     star(#)            如果相关系数的假设检验之P值小于#,则在
                               相关系数旁打印星号

本文引用地址: http://www.sciencenet.cn/m/user_content.aspx?id=218177

10
wxyrocky 发表于 2009-11-14 20:11:50
用WORD发估计好些

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-26 04:25