打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Logistic 回归简明教程: 原理、SPSS操作、结果解读与报告撰写
第23讲 观察性研究统计策略(8):初学logistic 回归
在医学科研、特别是观察性研究领域,无论是横截面调查、病例对照研究、还是队列研究,经常遇到分类的健康结局,包括二分类(如:生存与死亡、阳性与阴性、发病与未发病)或者多分类变量(如:疾病转归,治愈、无效、死亡;根据损伤程度分级的结局指标,如结核性胸腔积液胸膜粘连程度、视网膜出血程度、早产儿脑室缺血程度)以及一些可进行分类的生理生化、免疫指标等(如血压值、血镁值、血脂和胆固醇等)。当研究的健康终点是二分类变量时,线性回归分析往往无法进行(线性回归分析要求残差服从线性、正态性、独立性、方差齐性),此时可以考虑Logistic回归模型。
尤其是病例对照研究,它的结局全部为分类结局,很对Logistic胃口,同时病例对照研究往往要求计算的评价暴露因素影响程度的OR值(优势比),这一指标Logistic也能够计算得到。因此,病例对照研究设计与Logistic回归分析乃是天作之合。因此,本系列紧跟病例对照研究方法篇,介绍Logistic回归分析。
实例分析
例1:某医师基于某医院开展病例对照研究,探讨冠心病发病有关的影响因素,收集新发冠心病患者作为病例组,收集同期医院非循环系统疾病患者作为对照组,研究的暴露因素是病人的年龄age、性别sex、心电图检验是否异常ecg、高血压hyper、糖尿病diabetes。数据见casecontrol.sav。
1
统计分析策略
探讨影响因素研究,有基础统计学方法和高级分析方法(病例对照研究的基本统计分析策略);一般来说,基础统计学方法无法满足影响因素的研究,一般需要开展回归分析,且需要多因素回归分析。
线性回归常见包括线性回归、Logistic回归、Cox比例风险模型,三者分别用于定量数据、分类数据、带有结局的生存时间资料。
本案例是病例对照研究,该研究结局是分类变量资料。采用的方法是Logistic回归方法(病例对照研究的基本统计分析策略)。
2
logistic回归分析的基本原理
回归分析的主要功能是研究影响因素、开展预测。线性回归分析是通过构建线性函数,探讨影响与预测定量数据结局大小的因素。
如果结局是分类变量,回归分析主要分析影响阳性事件发生的因素,预测阳性事件的发生。在本文案例中,冠心病的发生是需要探讨的阳性事件。
影响与预测阳性事件发生,可以用概率P来表示。P值越大,阳性事件发生的可能越大。如果一个因素可以导致概率P增大,说明该因素是重要的影响因素或者预测因素。
借鉴线性回归的原理,我们希望建立起一个关于P的线性函数:
遗憾的是,P与x的关系并不符合线性回归分析所要求的线性关系前提条件(它们的关系是S型曲线的关系),因此方程无法成立。
之前推文介绍过,线性回归若线性条件不符合,可以对Y或者X进行转换,以满足线性回归的要求。因此,统计研究者对P进行了转换,称之为logit转换,或者logit(P):
于是,我们就建立了关于P与结局的转换线性关系,这一回归模型被称之为广义线性模型,其中logit(P)的转换模型叫做Logistic回归。
只从数据本身考虑的话,Logistic回归模型都是包括一个分类因变量及若干自变量(可以是分类变量,也可以是连续变量),反映了m个自变量对因变量的线性影响。无论对于病例对照研究还是队列研究,这种形式都是不变的。
基于上述公式,我们可基于多个自变量预测结局Y。上述公式可以转为以下关于P的更直接的公式:
比如有一名患者,女性、年龄57岁、心电图ST段重度异常、同时患有高血压和糖尿病,则可计算得到她患冠心病的概率为0.961。相反,如果另一名患者为女性、年龄49岁、心电图ST段轻度异常、同时糖尿病而无高血压,则她患冠心病的概率是0.262。
这一概率就是回归分析的预测值,预测值显然与实际值有差异(详细可以阅读文章线性回归时,你还不会做残差分析?来看基本教程!)。比如第一名患者实际值是1(发生冠心病),真实值与实际值之间的差异是0.039,这一差异便是前文介绍过的残差。同样,第二名患者实际值是0(未发生),残差是-0.262。
好的模型,残差越小越好,残差均方越小越好。因此,logistic回归模型中,残差也是非常重要的评价指标。
3
Logistic OR值计算
Logistic回归核心的功能之一是研究影响因素,它用于评价暴露因素影响程度的指标是OR值。
关于OR值,我在前文有详细的介绍(病例对照研究的基本统计分析策略)。观察性研究无论是横截面调查、病例对照研究或者队列研究,经常需要借助OR值暴露因素效应值,实际上实验性研究也经常使用该指标来评价干预措施的疗效。OR值指的是,优势比/比数比(odds ratio,OR)。优势(odds)是指二分类事件中一类事件相对于其对立事件的优势。病例组中优势是暴露者数/非暴露数,对照组中暴露数/非暴露数。
Logistic回归分析,实际上也是关于优势的回归模型。诸位稍微思考思考可以放发现a/(a+c)、b/(b+d)便是P,c/(a+c), d/(b+d)是1-P。a/(a+c) 除以c/(a+c)  即P/1-P,即阳性事件的优势。因此,可以得到以下的公式:
现在如果要探讨性别的影响,男性与女性的差异,可以从两个角度来分析讨:第一,计算回归系数β1,说明性别变量X对Y的影响;第二,计算OR值,两者是等同的,男性相对女性的影响回归系数b值等于ln(OR)值。
简而述之:
OR值大于1,提示暴露因素是阳性事件发生的促进因素;OR值小于1,提示暴露因素是阳性事件发生的阻碍因素; OR值等于1,提示暴露因素对阳性事件的发生无影响。
相对来说,OR值比b值在解释对结局的影响上更有意义,它能够说明结局Y风险增加的程度。比如OR=2,大致可以说明暴露因素增加发生阳性结局1倍的概率(千万注意,此处只能说大致、左右,原因后续再论)
医学研究中,风险大小估计是重要的内容。由于能够巧妙地计算OR值,Logistic回归在医学领域大受欢迎,特别是病例对照研究。
4
Logistic回归分析类型
依据研究设计不同,可分为非条件Logistic回归模型和条件Llogistic回归模型。非条件Logistic回归用于成组设计的观察性研究,而条件Logistic 回归一般用于匹配设计研究。
依据因变量类型(水平数量),又可分为二分类Logistic回归模型和多分类Logistic回归模型;二分类Logistic回归也称二元Logistic回归(SPSS软件的叫法)
此外,根据多分类因变量是否有序,又可以分为多分类有序logistic回归模型和多分类无序logistic回归模型。
Logistic回归模型分类(本图来源于“医学统计分析学习”公众号)
本研究是基础教程,多分类、配对Logistic回归不再学习范围之内,我就介绍最基本的二分类非Logistic回归分析。本例所采用的方法便是多因素非条件Logistic回归分析。
SPSS操作
1
Logistic回归入口
分析--回归--二元Logistic回归
2
Logistic回归分析界面
①因变量:放入“是否患有冠心病(ca)”②协变量:即自变量,放入年龄、性别、心电图表现、糖尿病、高血压③保存:可分别计算除预测值(即P值)和残差,残差包括原始残差和标准化残差。
④选项:可计算霍斯黙-莱梅肖拟合优度(Hosmer-Lemesho,H-L检验)(①)、OR值的95%CI置信区间(②)
3
Logistic回归分析结果及其解读
Logistic回归得到诸多结果,初学者仅需要重点关注以下几个表格。
首先提供的是Omnibus Tests of model Coefficients :指的是对模型的总的全局检验,为似然比检验。
结果里面的三行分别指的是:步骤(step)统计量是每一步与前一步的似然比检验结果,块(block)是指将block n与block n-1 相比的似然比检验结果,模型(model) 一行输出了Logistic回归模型中所有参数是否均为0的似然比检验结果,这是总体评价的关键检验。P<0.05表示本次拟合的模型中,纳入的变量中,至少有一个变量的OR值有统计学意义,即模型总体有意义。
其次,Logistic 回归提供模型拟合优度(Goodness of Fit)评价。所谓拟合优度,指的是模型构建的效果如何,与真实情况或者理想情况相比,差距有多大。线性回归分析一般采用R^2来反映拟合优度的效果。logistic回归拟合优度包括两类:从量评价拟合优度和从质提供拟合优度效果
量化评价拟合优度效果。Logistic回归分析提供类似于R^2的,考克斯-斯奈尔R方(Cox & Snell R^2)和内戈尔科R方(Nagelkerke R^2)。不过,这两种R^2有时被称为伪R^2,在Logistic回归中意义不大(与线性回归中的不同),可以不予关注。-2对似然值(-2 log likelihood,-2LL))是模型评价重要的指标,该值越小越好,可以用于不同模型评价效果。
质性评价拟合优度效果。霍斯黙-莱梅肖拟合优度检验(Hosmer-Lemesho,H-L检验)可以用于评价模型是否充分利用了现有的信息最大化地拟合了模型、解释了模型的变异。该研究若P>0.05,则可说明模型拟合优度效果较好,若P<0.05,则说明可以模型构建效果欠佳。
本例P=0.485,说明模型拟合优度情况良好。
最后为核心分析的结果:Logistic回归分析分别回归系数b值、b值的标准误、Wald 卡方值(瓦尔德)、自由度、P值(显著性)、OR值(Exp B)及其置信区间。
其中,Wald 卡方值(瓦尔德)和P值是对回归系数b值的假设检验。P<0.05, 说明该变量对结局的影响具有统计学意义;本例,性别、年龄、心电图表现、有无高血压变量对结果具有统计学意义。
Exp B即OR值,与回归系数的关系是e^b值。OR值置信区间与P值的关系是:当P<0.05,则置信区间不包括1;当P>0.05,则置信区间包括1。
特别要提醒诸位的是:OR值大于1,是否就是危险因素?OR值小于1是否就是保护因素呢?这种说法是非常的武断。
首先,对OR值不能再采用危险还是保护的说法,危险、保护做法往往针对不良的阳性事件结局,用词倾向性太严重。在临床上或者更多领域,更中性、更容易理解的是用促进或者阻碍的说法来反映。
OR值大于1,提示暴露因素是阳性事件发生的促进因素;OR值小于1,提示暴露因素是阳性事件发生的阻碍因素;OR值等于1,提示暴露因素对阳性事件的发生无影响。
其次,要理解OR值必须得非常清晰地明确,暴露因素的对照组是谁?阳性事件又是谁。
SPSS统计结果表给不了太多信息。比如性别,它只告诉我们性别对阳性事件发生有影响。但是到底男性风险大还是女性风险大?OR=6.24到底针对谁呢?
要读懂统计结果表,读懂OR值,必须明确:(1)何为阳性事件,我们可能想当然认为阳性事件必然是冠心病发生;然而在SPSS分析中,阳性事件指的是数据库结局变量赋值较大的结局。在本例中,若是否有冠心病(ca)变量,如果(冠心病是0,未发生冠心病是1),那么未发生冠心病的是阳性事件。
是不是听起来特别别扭?我想要研究的是发生冠心病的风险呀!怎么办? 那就请诸位在构建数据库时,将所指认的阳性事件给予更高的赋值,高于阴性事件。对于二分类的结局,最好用0、1表示(0代表阴性事件,1代表阳性事件),保证你理念中的阳性事件与SPSS的阳性事件定义的统一,不容易出错。
(2)要明确自变量,谁为对照?对于定量数据,比如年龄,b值代表x每增加一个单位,结局改变的量;OR值更有意义,OR代表,x增加一个单位,比如年龄增加一岁,阳性事件出现的概率将大约增加(OR-1)倍;对于年龄,比如年龄增加一岁,平均风险将增加0.091倍,这意味着,年龄越大,冠心病风险越高。
对于二分类定性数据,OR值也代表x增加一个单位,结局改变的量。比如性别,x增加一个单位,风险增加大约5.24倍。那么,如何理解此处“增加一个单位”的意思呢? 实际上指的是数据库性别变量赋值增加一个单位吗(性别变量从0增加1),风险增加大约5.24倍(不过不像年龄,性别变量x只能增加1次)。
很多时候,如此解释还别扭,我们更倾向寻找对照作为支点,进行比较分析。性别从0到1,那就是性别变量赋值为1和赋值为0的相比,风险增加5.24。0是什么?0是女性,而1是男性,那意味着是男性与女性相比,风险大概增加5.24倍。
SPSS统计分析在二分类自变量的影响时,默认是以自变量赋值较低作为对照,探讨赋值较大者能否相对能否增加阳性事件概率。
对于等级资料,其解释与定量数据无异,也就是X每加一个等级,比如年龄增加一岁,阳性事件出现的概率将增加(OR-1)倍左右;比如对于心电图异常情况变量,意味着心电图异常情况平均每增加一个等级,冠心病的风险将增加2.406倍左右。
此外,高血压变量在数据库中赋值为0=无高血压,1=有高血压,意味着对照组是无高血压,有高血压的病人与之相比,风险增加9.814倍左右。糖尿病无统计学意义。
总之,OR值是探讨SPSS数据库中自变量赋值较大者,对SPSS数据库中阳性事件的影响。如果不注意这一点,只看OR值就论是否危险因素,可能会得到了相反的结论。
最后,由于在本文SPSS操作中,勾选了计算预测值和残差,数据库给出了两个新的变量,分别是PRE_1(预测值)和RES_1(残差) ,两组相加,刚好是ca“冠心病”。
统计结果的撰写
规范文字1:纳入年龄、心电图和性别等构建多因素Logistic回归方程。结果发现:心电图异常对冠心病的影响具有统计学意义(OR=3.40,95%CI 1.81-6.37, P<0.001);年龄对冠心病的影响具有统计学意义(OR=1.09, 95%CI 1.03-1.15, P=0.001);性别对冠心病的影响具有统计学意义(OR=6.24,95%CI 2.50-15.56, P<0.001);高血压状况对对冠心病的影响具有统计学意义(OR=10.81,95%CI 4.15-28.20, P<0.001)。
规范文字2:纳入年龄、心电图和性别等构建多因素Logistic回归方程。结果发现:心电图异常等级增加将增加冠心病的风险,具有统计学意义(OR=3.40,95%CI 1.81-6.37, P<0.001);年龄越大冠心病风险越高,具有统计学意义(OR=1.09, 95%CI 1.03-1.15, P=0.001);相对女性,男性增加冠心病发生的风险,差异具有统计学意义(OR=6.24,95%CI 2.50-15.56, P<0.001);高血压增加冠心病的风险,差异具有统计学意义(OR=10.81,95%CI 4.15-28.20, P<0.001)。
特别提醒:Logistic回归OR值不能代表风险增加的准确倍数,因此文字描述,切勿说相对女性,男性增加冠心病风险5.24倍的说法。
规范表格:
特别注意
1. Logistic回归应用的前提条件是什么?
线性回归分析需要诸多条件,主要便是LINE(线性、独立性、方差齐性、正态性);Logistic回归也有应用条件,主要是线性和独立性两点(下文初学者可以跳过)。
Logistic要求自变量与logit(P)线性关系成立。线性条件可以根据以下公式看出:既然要构建多项式方程,logit(P)和各个x之间都要求存在着线性关系。
不过,Logistic线性条件主要针对定量自变量或者等级自变量,对二分类或者无序多分类数据没有要求。
线性条件不成立怎么办?可以对x进行转换,比如指数、对数转换,或者对x进行分组再哑变量设置分析。
下文的关于线性条件的例子来自于《中华流行病学杂志》2019年第8期的文章:冯国双.观察性研究中的logistic回归分析思路[J].中华流行病学杂志,2019,40(8):1006-1009
举例: 某研究分析老年人高血压(二分类变量,是或否)的危险因素,研究因素包括gender、age、ox-LDL、Adiponectin、ox-LDL IgG和ox-LDL IgM共6个指标。其中gender为二分类变量,其余变量均为连续变量。如果把6个自变量直接纳入统计软件分析,所得结果见表 1。
表 1 统计软件直接给出的高血压影响因素分析结果
可以看出,6个变量均差异无统计学意义。然而对数据重新分析后发现,并不是这些变量对结局均无影响,只是未能发现它们之间的真实关系而已。经仔细观察,发现age和ox-LDL IgM对结局的影响是有统计学意义的,但不是线性影响,而是二次项关系(表 2)。表 2 高血压影响因素重新分析后的结果
如何利用SPSS进行线性条件的诊断?一般情况下分为2步:第一步,计算残差;第二步,绘制残差与目标自变量的散点图
首先计算残差;由于在SPSS分析中,勾选了计算预测值和残差,数据库给出两个新的变量,分别是PRE_1(预测值)和RES_1(残差) ,两组相加,刚好是ca“冠心病”。
接着制散点图(X轴是年龄,Y轴是残差)。
结果解读:如果线性条件成立,残差应该分布在0值周围,并不会随着年龄的改变而发生有规律的变化。本案例分析表明结局变量与年龄的线性前提条件成立。
Logistic回归分析要求独立性。所谓的独立性,即阳性事件的发生,在其它空间、时间、人群(除纳入模型的自变量之外)中是随机分布的;反过来说,不独立的数据,则意味着阳性事件的发生存在着统计模型无法解释的聚集性。
比如,传染病的发病,可能在同一地区内部,存在着聚集性;在家庭成员内部存在着聚集性。传染病的聚集性,Logistic回归分析无法解释;家庭成员的遗传病聚集性,Logistic回归分析也可能无法解释。此时,Logistic 回归的结果相对来说不可靠!
如何结局数据不独立的问题?常见的办法,就是将引起聚集性的变量纳入回归模型中。比如,引发家庭聚集性的指标有两类:第一,家庭变量;家庭是原因变量,影响研究对象发生阳性事件的概率,同个家庭内部具有聚集性(同一个家庭成员都发生阳性事件,是因为他们有相同的原因:家庭);第二类,遗传学性指标。比如基因突变的变量;家庭成员均有共同的基因,因此,造成同一家庭成员都出现阳性结局。在统计分析时,只要将家庭变量或者基因突变变量作为自变量同时纳入模型,便可以消除聚集性问题。
如果没有采集到造成聚集性的原因变量,还能构建Logistic吗? 一般影响不大,但总是造成些许偏倚,结论不太可靠。
比如某一个学校发生了新冠肺炎,想研究新冠肺炎的影响因素,潜在影响因素包括性别、年龄、年级、有无慢性病、平时有无带口罩、勤洗手等因素,此时开展Logistic回归分析,结果是不可靠的。因为新冠肺炎患者可能存在着寝室的聚集性,因此回归分析模型应该纳入寝室变量构建回归模型;然而,由于寝室数量较多,寝室变量是无序多分类变量(分类数十几或者几十个),传统的Logistic回归分析无法应对,一般采用的是随机效应Logistic模型,比如多水平Logistic回归分析、广义线性混合模型等来处理。
比如,2016年发表在《中华疾病控制杂志》的文章。
文章背景在解释为什么采用随机效应logistic回归分析,说了这么一句:
随机效应模型的具体建模如下,有兴趣者可以瞅一瞅
那么如何鉴定阳性事件是否存在着聚集性呢?目前来看,似乎没有好的软件分析的方法,也未见相应的文献(如果有,请朋友告知我一声)。一般主要还是从理论上判断,所研究的数据没有在时间、空间和人群中存在着聚集性的问题。如果存在着,那么想办法纳入引起聚集性的变量进入回归模型。
SPSS 课程视频和操作录屏
SPSS课程视频
带字幕去水印的视频可复制以下地址浏览器打开
https://evod.zcmu.edu.cn/resource.html?stationID=1&resourceid=442&isprivate=false&cateid=102SPSS课程录屏
-本讲结束-
本公众号在传播统计学知识的同时,也放置了一些常用的资源来方便大家科研。所有资源全部免费下载,有兴趣的朋友可以关注下载。1.  医学统计学习全套视频,妙趣+高级+SPSS+测试题,让你从入门到精通!
2.  如何让excel绘制出精美的统计图?EXCEL  插件来帮忙!
3.  【免费下载】100本“临床试验与统计学方法”英文书籍大放送!
4.  如何让excel绘制出精美的统计图?EXCEL  插件来帮忙!
5.  最新!2019年卫生健康统计年鉴来了!2006-2019中国卫生统计年鉴合集下载
6.  不做实验如何利用临床数据库发表论文?精选临床预测模型视频合集
7.  重磅推荐:全网最全的医学统计相关软件,免费下载,均已破解
8.  如何制作与分析量表?中英文权威书籍来帮忙。
9. 流行病学与统计学完美结合:公共健康数据分析
10.  扔掉复杂统计分析软件,EXCEL一步完成统计分析
如果您觉得文章不错,点击“分享”吧,非常感谢。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
【典藏】Logistic 回归:从入门到进阶
一文搞懂logistic回归分析
logistic回归、probit回归与poission回归
初学者应该掌握的七种回归分析方法
Logistic回归分析时几个必须注意的问题【荐阅】
数据科学家需要了解的45个回归问题测试题(附答案)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服