多元有序logistic回归分析_一文详述:观察性研究中的logistic回归分析思路

66b6ae017c3b05974fbd74ab8709fc01.png
本文内容来自《中华流行病学杂志》2019年第40卷第8期,作者为冯国双教授,原题目为《观察性研究中的logistic回归分析思路》。将这篇文章分享给医咖会的伙伴们,希望大家能从领域大咖的见解中有所收获,指导医学研究之路。
(感谢冯国双教授的授权)

观察性研究在研究设计中占有非常重要的地位,实际应用中比较常见的是病例对照研究和队列研究。尽管其应用广泛,但在数据分析中却存在不少问题。在分析时往往只考虑数据本身,而未能结合研究类型,从而导致结果的偏倚。甚至在已发表的文章中,也存在一些不严谨用语。

本文从观察性研究的类型出发,基于不同研究类型的研究目的,以logistic回归分析为例,探讨观察性研究的不同分析思路,希望为医学科研工作者提供一定的参考和借鉴。

logistic回归

假定有m个自变量X1,X2,…,Xm,logistic回归模型的基本形式可表达为:

7eba34aa95ed0ad38702c52bd2aad79d.png

只从数据本身考虑的话,logistic回归模型都是包括一个分类因变量及若干自变量(可以是分类变量,也可以是连续变量),反映了m个自变量对因变量的线性影响。无论对于病例对照研究还是队列研究,这种形式都是不变的

部分研究在数据分析时,忽略了前期的设计思路,只是简单地把因变量和所有自变量纳入统计软件中相应位置,点击运行直接给出结果。从数据上来看,病例对照研究和队列研究的数据形式完全一样,软件操作过程也并无不同,都是指定因变量和自变量,然后给出参数估计值及统计检验结果。

统计软件无法判断研究者采用的是病例对照研究还是队列研究,也并不清楚作者的主要研究目的是什么,只是对指定的变量进行参数估计。而统计分析的思路需要根据研究目的和研究类型而定,对于病例对照研究或队列研究而言,它们的分析思路显然不同。一味依靠统计软件,不仅容易出现一些错误分析思路,也会导致错误的分析结果。

病例对照研究中的logistic回归

从数据分析的角度来看,病例对照研究大致有两大类目的:一是探索危险因素,二是验证危险因素。

1、以探索危险因素为目的的分析思路:

危险因素的探索常见于临床研究中,通常用于研究初期,此时研究者并不清楚哪些因素可能会影响结局的发生,因此先进行初步探索。根据专业知识和经验收集一些可能的指标,然后从中寻找可能对结局影响较大的因素。

例如,探索儿童打鼾的危险因素,研究者并无太多的前期基础,只是为了发现可能与儿童打鼾有关的因素,这种情况下会根据文献报道、专业经验等收集一些可能有关的指标,并从中找出与儿童打鼾有关的部分因素。

危险因素探索的文章中,最常见的表述错误是“校正其他混杂因素”后,发现共K个变量对结局有影响。混杂因素是相对主要研究因素而言,而危险因素探索的研究中,并无明确的主要研究因素,所有变量都是待研究的因素,目的是从这些变量中找出哪些有影响。此类研究中,“校正其他混杂因素”是一种不严谨的表达方式。

对于这种分析思路,需要有一定的分析经验和技巧。实际分析中,需要考虑几个问题:

① 线性问题:由于logistic回归本质上仍属于“线性模型”,因此一定要确认自变量与因变量(logit P)之间是否存在线性关系,如果不是,需要考虑进行相应的变换,否则可能会产生错误结果。

例1:某研究分析老年人高血压(二分类变量,是或否)的危险因素,研究因素包括gender、age、ox-LDL、Adiponectin、ox-LDL IgG 和 ox-LDL IgM 共6个指标。其中gender 为二分类变量,其余变量均为连续变量。如果把6个自变量直接纳入统计软件分析,所得结果见表 1。

46f3d53adcdb110e478a3248c2946fcb.png

可以看出,6个变量均差异无统计学意义。然而对数据重新分析后发现,并不是这些变量对结局均无影响,只是未能发现它们之间的真实关系而已。经仔细观察,发现 age 和 ox-LDL IgM 对结局的影响是有统计学意义的,但不是线性影响,而是二次项关系(表 2)。

0047594462de9de6044afdc05c169333.png

② 共线性问题:共线性即自变量之间存在高度相关,从而导致结果不可靠 [1]。共线性是大多数回归模型都需要考虑的一个问题,一旦发现该问题,需要采取不同措施来解决。常见的解决方案包括删除某一自变量、主成分分析、Lasso回归等。

例2:某研究分析乳腺增生的危险因素,自变量同时包括妊娠次数(三分类变量,用1、2、3表示相应次数)和流产次数(三分类变量,用0、1、2表示相应次数)。在单因素分析中妊娠次数差异有统计学意义(2 vs. 1,P=0.026;3 vs. 1,P=0.035),然而多因素分析中则差异无统计学意义(P值分别为0.635、0.594)。分析原因发现,主要是由于妊娠次数和流产次数有较强的共线性,二者相关系数高达0.55,从而导致妊娠次数变得无统计学意义。解决方案采用了删除法,删除妊娠次数变量,保留了流产次数变量。

③ 单因素和多因素的问题:目前危险因素筛选的一种分析思路:先进行单因素分析,将单因素分析中差异有统计学意义(P<0.05)的变量再纳入多因素分析,选出最终有统计学意义的变量作为危险因素。然而这一思路并非十分可靠,有些情况下可能会出现单因素分析无统计学意义而多因素分析有统计学意义的情况,此时就容易漏掉某些重要的因素。

例3:某研究分析两个血清学指标(分别用阳性和阴性表示)对胃癌的影响,数据结果见表 3。

6a03e529d4a66830e291c0768d41e3e9.png

该数据采用单因素分析的话,可以发现 x1 差异无统计学意义(P=0.114),而在多因素分析中却变得有统计学意义(P=0.018)。如果只将单因素分析中有统计学意义的变量纳入多因素分析的话,就会漏掉x1变量。

为什么会出现这种情况,主要是因为 x1 和 x2 之间存在负相关,而 x1、x2 与结局之间均为正相关。因此,数据分析过程中,不要盲目套用所谓的“分析套路”,而应结合实际情况具体问题具体分析。

总之,在筛选危险因素时,建议不要仅将单因素分析有统计学意义的变量纳入多因素分析,一定要厘清变量之间的关系,否则容易遗漏重要的变量或纳入无意义的变量。

2、以验证危险因素为目的的分析思路:

验证危险因素,说明研究者在研究开始时已经有明确的主要研究因素,主要目的是为了验证该因素是不是真正的影响因素。基于这种目的,研究者在设计时会突出主要因素,但同时也会收集其他可能的混杂因素。

例如,探索肺癌与吸烟的关系,吸烟是主要研究因素,因此问卷调查中会详细设置各种与吸烟有关的问题。考虑到其他因素可能也会影响肺癌发生,因此调查时也会加入其他有关因素的调查,但这些因素不是研究者关心的,只是为了校正这些因素,以便真正明确吸烟与肺癌的关系。

因此,对于这种研究目的关键的问题是,如何控制混杂因素,以便真正明确主要研究因素与结局的关系。混杂因素在流行病学中已有详细定义[2],不再赘述。

从数据分析的角度来看,要判断一个因素是否为混杂因素,可以从两个方面来考虑:

第一,分析该因素是否对结局有较大影响,通常可采用χ2检验或单因素logistic回归来实现;

第二,分析该因素在主要研究因素中的分布情况,通常采用χ2检验来实现。

例4:某研究分析性别与幽门螺杆菌(Hp)的关系,现在考虑吸烟是否为影响二者关系的混杂因素。具体数据见表 4。

e6ef491fd5710386ee36dba6c1d64642.png

首先分析吸烟对结局的影响,采用χ2检验或单因素logistic回归不难发现,吸烟人群与不吸烟人群相比,Hp阳性的风险更高(OR=1.84,95%CI:1.44~2.35)。其次分析吸烟在性别中的分布,χ2检验结果显示,男性和女性中吸烟的比例差异有统计学意义(χ2=396.97,P<0.001),男性的吸烟比例远高于女性。

由此看出,以性别作为主要分析变量,在分析性别与Hp感染时,吸烟可能是影响二者关系的混杂因素,必须加以校正。校正前结果显示,性别对Hp的影响有统计学意义,男性有更高的Hp阳性风险(OR=1.62,95%CI:1.26~2.07);校正后发现,性别对Hp的影响无统计学意义(OR=1.26,95%CI:0.94~1.68)。

因此,对于以验证危险因素为目的的logistic回归分析,分析思路主要是明确哪些因素可能是混杂因素并加以校正,以发现主要研究因素与结局的真实关系。

建议尽量避免的两种思路

①把所有变量都进行校正。除非样本量足够大,否则这种方式不可取。因为纳入的自变量越多,所消耗的自由度越大,用于估计主要研究因素的样本量相对越小,结果的精确度也越低。

②采用逐步回归筛选变量。作为主要研究变量,一定要保留在模型中,同时要纳入混杂因素。逐步回归筛选适用于探索危险因素,不适用于验证危险因素。

队列研究中的logistic回归

队列研究绝大多数都是为了验证某一危险因素,这是由研究性质决定的。因为队列研究在一开始就需要指定暴露和非暴露,也就相当于确定了主要研究因素。因此,从数据分析角度来讲,队列研究主要是为了排除混杂因素,与前文介绍的思路并无不同。但队列研究在时间顺序上可以证明研究因素发生在前,结局发生在后,因此其验证能力更强。

由于队列研究有明确的时间先后顺序,此时在说明主要研究因素与结局的关联强度时,可采用RR(risk ratio)而非OR(odds ratio)。队列研究中,当结局发生率很低时(<10%),OR是RR的一个很好的替代指标,此时用logistic回归可直接求得OR值,用来说明暴露的危险度。但如果结局发生率不是很低,OR与RR差别较大,此时用OR来说明危险度可能会有一定的偏倚 [3]。

例5:某研究分析Hp感染与胃黏膜病变进展的关系,观察数据见表 5。

f3831d2a3c8e6af6d9359bbb86bc80ad.png

本研究如果计算OR值,则OR=2.44(95%CI:1.05~5.70),如果计算RR值,则RR=1.77(95%CI:1.01~3.12)。由于病变进展的发生率较高,两个指标差别较大。

队列研究中RR值的计算通常可采用对数二项分布回归(log-binomial regression)。通常需要借助软件实现,如SAS的proc genmod过程[4]。

小结

本文介绍了病例对照研究和队列研究中logistic回归分析的不同思路,以及常见的一些应用错误。然而本文的思路并不仅限于logistic回归分析,完全可以推广到其他广义线性模型。

例如,队列研究的观察结局如果是计数资料,则可考虑Poisson回归或负二项回归,此时仍需考虑混杂因素的校正问题。因此,本文思路对各种常见的回归模型均有一定借鉴意义,至于模型的选择主要取决于研究结局类型及其分布。

在各种常见的回归分析中,一定要分清研究类型及其目的,到底是探索危险因素还是验证危险因素。危险因素的筛选过程较为复杂,需要考虑较多问题,包括变量筛选方式等;验证危险因素相对较为简单,不需要考虑变量筛选,但要明确混杂因素并加以校正。

一定要避免“把数据完全交给软件”这种分析方式,软件主要用来解决计算问题,分析思路必须由研究者来确定。统计分析不是简单的参数估计,而应结合研究类型,明确研究思路,才能给出合理的结果。

利益冲突:所有作者均声明不存在利益冲突

参考文献:
1.Mennard S. Applied logistic regression analysis[M]. Newbury Park, California: SAGE Publications, Inc, 2001.
2.徐飙. 流行病学原理[M]. 上海: 复旦大学出版社, 2007.
Xu B. Epidemic theory[M]. Shanghai: Fudan University Press, 2007.
3.Stokes ME, Davis CS, Koch GG. Categorical data analysis using the SASsystem[M]. 2nd ed. Cary, NC: John Willy & Sons, Inc, 2000.
4.冯国双, 刘德平. 医学研究中的logistic回归分析及SAS实现[M]. 2版. 北京: 北京大学医学出版社,, 2015.
Feng GS, Liu DP. Logistic regression analysis and SAS application in medical research[M]. 2nd ed. Beijing: Peking University Medical Press, 2015.

244e0a40575e7f9d7cbe31069699d2c1.png
扫码关注“医咖会”公众号,及时获取最新统计教程!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/436435.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【转】禁用Chrome和Firefox中自动播放的动画GIF

动画GIF已经腐臭,并且在浏览时自动播放时可能会非常烦人。以下是如何阻止他们在Chrome和Firefox中自动播放。 禁用动画GIF Firefox 在地址栏中输入: about:config,然后按Enter。如果“这可能会使您的保修信息失效,请点击&#…

Python:Sklearn概述

文章来源:https://blog.csdn.net/algorithmPro/article/details/103045824 Sklearn (全称 Scikit-Learn) 是基于 Python 语言的机器学习工具。它建立在 NumPy, SciPy, Pandas 和 Matplotlib 之上,里面的 API 的设计非常好,所有对象的接口简单…

内存参数 计算_Spark统一内存管理的实现

本文从源码角度分析spark统一内存管理的实现原理。统一内存管理对象的创建统一内存管理对象在SparkEnv中进行创建和管理,这样内存管理就在Driver和Executor端中都可以使用。在SparkEnv的create函数中,创建内存管理对象的实现代码如下:val use…

Python:以鸢尾花数据为例,介绍决策树算法

文章参考来源: https://www.cnblogs.com/yanqiang/p/11600569.html https://www.cnblogs.com/baby-lily/p/10646226.html https://blog.csdn.net/liuziyuan333183/article/details/107399633 决策树算法 决策树算法主要有ID3, C4.5, CART这三种。 ID3算法从树的…

【转】CT球管小知识--热容量

Heat Unit 简称HU,为DR、CT等医疗设备中球管的热容量单位。如,Varian球管RAD14的热容量为300kHU。设备工作时,X线管两极之间要承受极高的电压,并通过一定量电流,高速电子束撞击阳极靶面,将产生大量热能。X线…

一键锁屏_ios快捷指令一键登录校园网(桂航为例,哆点认证)

(鄙人水平很有限,所学的专业也和此无关,文中有的东西可能会说错,但我尽量用简单的方式说。请多指教)现在很多高校现在晚上断电断网,最烦恼的事莫过于第二天早上起床眯着眼摸出手机输入账号密码登录校园网的…

【转】一篇文章完整了解CT成像技术(完整版)

1.CT的发明与发展 1.1 CT的发明 CT是计算机断层摄影术(Computed Tomography,CT)的简称,是继1895年伦琴发现X线以来,医学影像学发展史上的一次革命。 CT的发明可以追溯到1917年。当时,奥地利数…

Pandas数据可视化工具:图表工具-Seaborn

内容来源:https://www.jiqizhixin.com/articles/2019-01-30-15 简介 在本文中,我们将研究Seaborn,它是Python中另一个非常有用的数据可视化库。Seaborn库构建在Matplotlib之上,并提供许多高级数据可视化功能。 尽管Seaborn库可以…

图解WinCE6.0下的内核驱动和用户驱动

图解WinCE6.0下的内核驱动和用户驱动 在《WinCE驱动程序的分类》中曾提到&#xff0c;WinCE6.0的流驱动既可以加载到内核态也可以加载到用户态。下面通过一组图片简单说明一下这两种驱动的关系。 首先编写一个流驱动WCEDrv&#xff0c;代码如下。 代码 #include <windows.h&…

人体轮廓_女性人体油画轮廓柔和生动,优美动人,你喜欢吗?

人体油画是艺术和时代的产物&#xff0c;也是艺术结晶的重要体现&#xff0c;在文艺复兴以前&#xff0c;人体艺术大都以雕塑形式来表现&#xff0c;在此之后&#xff0c;人们都以意大利威尼斯绘画为代表&#xff0c;艺术家们开始以色彩塑造人体绘画艺术。随着时代进步和人们对…

机器学习分类模型中的评价指标介绍:准确率、精确率、召回率、ROC曲线

文章来源&#xff1a;https://blog.csdn.net/wf592523813/article/details/95202448 1 二分类评价指标 准确率&#xff0c;精确率&#xff0c;召回率&#xff0c;F1-Score&#xff0c; AUC, ROC, P-R曲线 1.1 准确率&#xff08;Accuracy&#xff09; 评价分类问题的性能指标…

【转】AI-900认证考试攻略

架构师的信仰系列文章&#xff0c;主要介绍我对系统架构的理解&#xff0c;从我的视角描述各种软件应用系统的架构设计思想和实现思路。 从程序员开始&#xff0c;到架构师一路走来&#xff0c;经历过太多的系统和应用。做过手机游戏&#xff0c;写过编程工具&#xff1b;做过…

300plc与组态王mpi通讯_S7-300与S7-200之间的MPI通信

通信说明S7-200PLC与S7-300PLC之间采用MPI通讯方式时&#xff0c;S7-200PLC中不需要编写任何与通讯有关的程序&#xff0c;只需要将要交换的数据整理到一个连续的V 存储区当中即可&#xff0c;而S7-300PLC中需要在组织块OB1(或是定时中断组织块OB35)当中调用系统功能X_GET(SFC6…

ORA-01114: 将块写入文件 35 时出现 IO 错误

参考文档&#xff1a; https://blog.csdn.net/z_x_1000/article/details/17263077 https://www.cnblogs.com/login2012/p/5775602.html https://www.iteye.com/blog/yangyangcom-2200174 一、问题背景 最开始发现应用服务打不开&#xff0c;于是登录服务器发现Oracle数据关…

【转】CT影像文件格式DICOM详解

CT影像文件格式DICOM详解 DICOM简介 DICOM&#xff08;Digital Imaging and Communications in Medicine&#xff09;即医学数字成像和通信&#xff0c;是医学图像和相关信息的国际标准&#xff08;ISO 12052&#xff09;。DICOM被广泛应用于放射医疗&#xff0c;心血管成像以…

fatal error lnk1120: 1 个无法解析的外部命令_3月1日七牛云存储割韭菜的应对方法...

前言早上起来看邮件&#xff0c;看到一封被七牛云割韭菜的公告&#xff1a;内心冰冰凉&#xff0c;不过大家都要吃饭的嘛总不能一直免费下去。所以来研究一下对于我们这种穷人应该如何应对。一、七牛CDN加速流程主要流程分析1、用户通过浏览器访问我的网站(腾讯云服务器)&#…

【转】DCM(DICOM)医学影像文件格式详解

1、 什么是DICOM&#xff1f; DICOM(DigitalImaging andCommunications inMedicine)是指医疗数字影像传输协定&#xff0c;是用于医学影像处理、储存、打印、传输的一组通用的标准协定。它包含了文件格式的定义以及网络通信协议。DICOM是以TCP/IP为基础的应用协定&#xff0c;并…

SM4对称加密算法及Java实现

文章来源&#xff1a;https://www.jianshu.com/p/5ec8464b0a1b 一、简介 与DES和AES算法类似&#xff0c;SM4算法是一种分组密码算法。 其分组长度为128bit&#xff0c;密钥长度也为128bit。 加密算法与密钥扩展算法均采用32轮非线性迭代结构&#xff0c;以字&#xff08;32位…

【转】DICOM网络协议(一)概述

转自&#xff1a;https://www.jianshu.com/p/8a0f0fe6a738 作者&#xff1a;我住的城市没有福合埕 DICOM (Digital Imaging and Communications in Medicine)即医学数字成像和通信&#xff0c;DICOM网络是基于TCP/IP的网络协议。通过DICOM将影像设备和存储管理设备连接起来。…

Windows进程系列(2) -- Svchost进程

在基于NT内核的Windows操作系统家族中&#xff0c;Svchost.exe是一个非常重要的进程。很多病毒、木马驻留系统与这个进程密切相关&#xff0c;因此深入了解该进程是非常有必要的。本文主要介绍Svchost进程的功能&#xff0c;以及与该进程相关的知识。      Svchost进程概述…