1、应用Stata做logistic回归,何保昌,实际生活中经常会遇到因变量只有0和1的二分类变量,不能满足正态性和方差齐性,故不能直接使用线性模型来拟合方程。 Logistic回归正是处理因变量是二分类或多分类变量的一种方法。现已广泛应用于队列研究,病例对照研究和试验性研究,成为分类因变量的首选多变量分析模型。,分类,按因变量性质,可分为二分类、无序多分类、有序多分类。 按是否匹配可分为非条件和条件logistic回归。,Stata软件专门有一组命令用于做不同类型的logistic回归,例如:logit、blogit、glogit、clogit、mlogit、ologit。,1.Logistic
2、 回归,命令:logit 因变量 自变量 ,选择项,在进行logistic 回归时要注意资料的形式。通常,用于logistic 回归的资料有三种形式:(1) 分水平频数资料,一般自变量较少,且均为分类变量,常以各变量(包括因变量、自变量)各水平的组合的频数表形式出现。如例1。拟合时仍用上述命令,只是命令中增加fw=频数变量选择项。,(2) 分组频数资料,一般自变量较少,且均为分类变量,常以各自变量(不包括因变量)各水平的组合的频数表形式出现,因变量常表达为分子与分母。如例2。用下列命令:blogit 阳性数变量 总观察数变量 ,logit 命令选择项或 glogit 阳性数变量 总观察数变量
3、,level(#) or(3) 个体水平资料,即一个观察对象一条记录。如例3,直接使用logit 命令估计即可。拟合模型后可以用指令predict 得到预测概率,然后进行模型诊断、应用等。,例1 本例是探讨妇女使用雌激素与患子宫内膜癌之间关系的病例-对照研究资料,见表1,请计算OR 及其95可信区间。再用logistic 回归估计参数,写出回归方程,并说明回归系数与OR 的关系。,也可以用logit命令,可以利用例3做逐步回归,Stata 用于逐步回归分析的命令是在要执行的命令前增加sw 。sw 回归命令 因变量自变量, 筛选变量的P 值 选择项其中,筛选变量的P 值有3 种组合pr(#) /
4、* 后退法pe(#) /* 向前法pr(#) pe(#) /* 逐步后退法pr(#) pe(#) forward /* 逐步向前法,pr(#)是剔除变量的P 值,pe(#)是选入变量的P 值,如果只选pr(#),则表示用后退法,如果同时选用pr(#)和pe(#)表示逐步法。应用时,为防止计算进入死循环,pr(#)须略大于pe(#)。例如,pe(0.05),pr(0.051)。,1. 用逐步后退法,剔选变量的概率为:pe(0.05),pr(0.06),结果如下: sw logit y x1 x2 x3, pe(0.05) pr(0.06)2. 用逐步前进法,剔选变量的概率不变,结果如下: sw
5、logit y x1 x2 x3, pr(0.06) pe(0.05) forward,条件logistic 回归,非条件logistic 回归适用于平行组设计的病例-对照研究,队列研究,而不适用于配比设计的病例-对照研究。对于配比的病例-对照研究资料需要用条件logistic 回归。其命令为:clogit 因变量 自变量 , group(配比变量) level(#) or 其中group()是必选项,它是用来区分各配比组的。level(#)及or 的意义同logit。,例4 在子宫内膜癌与使用雌激素关系的研究中,运用了1:4 的病例-对照研究,配比因素为年龄,共调查了20 对,100 例。,
6、各变量定义如下:1: match 配比组2: y y=1:病例, y=0:对照3: ht ht=0:无高血压, ht=1:有高血压4: est est=0 未使用过雌激素, est=1:使用过雌激素5: dose 剂量:dose=0:未使用过, dose=1:0.1-0.299(mg/day)6: drug drug=0:未使用其他药物, drug=1:使用了其他药物,首先,使用ht、est、drug 三个变量作条件logistic 回归。. clogit y ht est drug, group(match),结果显示,患高血压(ht)及使用其他药物(drug)与子宫内膜癌无关,而使用过雌激
7、素者患子宫内膜癌的可能性比未使用过雌激素者大。因此,可以进一步考虑剂量-反应关系。变量剂量(dose)可以按两种方法处理,先按线性形式进入模型,再以哑变量形式进入模型,并比较两者的结果。 clogit y ht dose drug, group(match),结果显示,随着剂量的上升,服用雌激素与患内膜癌间的联系也明显上升,呈现出明显的剂量反应关系。这种关系是否为线性的?dose 用哑变量形式是否更好?xi : clogit y ht i.dose drug, group(match),多类结果的logistic回归,在医学研究中,常常会遇到结果变量是多分类的情况,如同一种肿瘤的不同亚型;病例
8、-对照研究中的一个对照组,两个或多个病例组;或一个病例组,两个或多个对照组,如医院对照和健康人群对照等。,用于多类结果的logistic 回归的命令是mlogit。,mlogit 因变量 自变量 , base (#) constraints(clist) level(#) rrr ,例5 产后大出血分为两大类:即宫缩乏力性(称为子宫因素)及胎盘因素。在产后大出血与有无妊高症x1及有无人流史x2的关系研究中,将产后出血量400ml的作为病例,并分为上述两类,共调查了933人,其中子宫因素出血的155人,胎盘因素出血的33人,对照745人。结果见表5。本例,结果变量为:y=0 为对照(C类)y=1
9、 为宫缩乏力性产后大出血(A类)y=2 为胎盘因素产后大出血(B类)。,mlogit y x1 x2 fw=count, rrr,同一变量在不同的logit函数中的效应可能相同,亦可能不同,这可以通过test命令来检验。,test 1x1=2x1test 1x2=2x2,有序结果的累积比数logistic回归,用于有序结果的logistic 回归的命令是ologit。ologit 因变量 自变量 ,table level(#)其中选择项table用于指定打印出各类的概率;level用于指定显著性水平,例6 南通医学院陈佩珍教授研究了儿童智商等级与其母亲文化程度的关系,共收集了857名儿童的资料,见表6。,可以计算出OR=1.89,解释为:当母亲的文化程度提高一个等级时,儿童智力提高一个或一个以上等级的可能性将增加0.89倍,小结,Logit、 blogit 、 glogit 、 blogit 、 clogit 、 mlogit 、 ologit,