合理进行多重Logistic回归分析
——结合ROC曲线分析
2022-02-02胡纯严胡良平
胡纯严 ,胡良平 ,2*
(1.军事科学院研究生院,北京 100850;2.世界中医药学会联合会临床科研统计学专业委员会,北京 100029*通信作者:胡良平,E-mail:lphu927@163.com)
在医学上,若某种定量观测指标的取值大小与受试者是否患某种疾病之间存在一定的关联性,研究者希望用某种定量指标的取值去预测或判断受试者患该疾病的概率。这样的定量指标被称为诊断指标。而评价这种诊断指标诊断性能高低的有效方法为ROC曲线分析。本文将基于多重Logistic回归分析,并结合ROC曲线分析处理诊断试验资料,以展示将这两种方法结合使用相较于仅用多重Logistic回归分析,可以获得更丰富、更合理的统计分析结果。
1 基本概念
1.1 常用诊断指标的统计描述
1.1.1 诊断试验结果的表达形式
诊断试验结果可整理成表1所示的形式[1]。
表1 诊断试验结果的表达形式Table 1 Expression of diagnostic test results
1.1.2 评价诊断试验真实性的指标
1.1.2.1 金标准或标准诊断
评价任何一种诊断试验在临床上的价值,都是与金标准或标准诊断相比较而言的。所谓金标准,是医学界公认的、具有诊断某一疾病价值的最佳方法,如国际、国内公认的诊断标准、方法、病理学检查、手术所见及特殊检查所获得的结论等。
1.1.2.2 灵敏度
灵敏度(Sensitivity,Se)即真阳性率,指在标准诊断确诊阳性组中,诊断试验阳性结果人数与患者组总人数的比值,其计算公式见式(1)。
灵敏度反映了诊断试验将实际已患所研究疾病的受试者正确判断为该病患者的能力。
1.1.2.3 假阴性率
假阴性率(False negative rate,FNR)即漏诊率,指在标准诊断确诊阳性组中,诊断试验阴性结果人数与患者组总人数的比值,其计算公式见式(2)。
假阴性率反映了诊断试验将实际已患所研究疾病的受试者错误判断为非该病患者的比例。
1.1.2.4 特异度
特异度(Specificity,Sp)即真阴性率,指在标准诊断确诊阴性组中,诊断试验阴性结果人数与非患者组总人数的比值,其计算公式见式(3)。
特异度反映了诊断试验将实际未患所研究疾病的受试者正确判断为非该病患者的能力。
1.1.2.5 假阳性率
假阳性率(False positive rate,FPR)即误诊率,指在标准诊断确诊阴性组中,诊断试验阳性结果人数与非患者组总人数的比值,其计算公式见式(4)。
假阳性率反映了诊断试验将实际未患所研究疾病的受试者错误判断为该病患者的比例。
1.1.2.6 约登指数
约登指数(Yonden's index)又称正确指数,是评价诊断试验结果真实性的综合指标,其计算公式见式(5)。
1.2 诊断资料的ROC曲线分析方法
1.2.1 ROC曲线分析
ROC是受试者工作特征(Receiver Operating Characteristic,ROC)或相对工作特征(Relative Operating Characteristic)的缩写[2-3]。ROC曲线分析于20世纪50年代起源于统计决策理论,后来应用于雷达信号观察能力的评价,20世纪60年代中期,该方法大量成功地用于实验心理学和心理物理学研究。1971年,Lusted描述了如何将心理物理学上常用的ROC曲线方法用于医学决策,该方法克服了诊断试验中仅孤立地使用灵敏度与特异度以及相关指标的缺陷。自此以后,ROC曲线分析成为非常有价值的描述与比较诊断试验的工具。
1.2.2 ROC曲线的构建
ROC曲线的横轴(x轴)表示诊断试验的假阳性率,常表示为1-Sp,纵轴(y轴)表示诊断试验的灵敏度,由不同决策界值点(1-Sp,Se)产生二维直角坐标系(简称图)中的不同点。采用线段连接图中所有可能的界值点,即形成经验ROC曲线。随着灵敏度的增加,假阳性率也增加,ROC曲线下面积反映了这种增加的数量大小。
2 计算方法
2.1 ROC曲线下面积的计算
2.1.1 计算方法概述
一般采用“ROC曲线下面积”反映诊断试验的准确性。理论上,这一指标取值范围为0.5~1.0,完全无价值的诊断试验的ROC曲线下面积为0.5,完善的诊断试验的ROC曲线下面积为1.0。ROC曲线下面积及其标准误的计算目前有非参数、半参数和参数方法,应用较广泛的包括Wilcoxon非参数法和最大似然估计“双正态”参数法。参数法与非参数法估计ROC曲线下面积均适用于诊断结果为连续性定量资料或等级资料的诊断试验的评价。
2.1.2 非参数法
非参数法是根据诊断试验结果直接计算绘制ROC曲线所需的工作点,由此绘制的ROC曲线为经验ROC曲线,曲线下面积与患者和非患者试验结果秩和检验的Mann-Whitney统计量相等,但其结果常小于真实的面积值。
2.1.3 参数法
参数法是根据试验结果拟合双正态模型,利用最大似然法估计模型的2个参数a和b,由2个参数可得到光滑的ROC曲线及曲线下面积的估计值。参数法的应用条件为:患者与非患者的诊断试验结果服从双正态分布。当不满足这一应用条件时,需要采用变量变换,将诊断试验结果转换为正态分布;在样本量较大、相同值较少时,参数法与非参数法估计的ROC曲线下面积常常近似相等。双正态模型参数法估计ROC曲线下面积的公式见式(6)。
式(6)中的a和b分别见式(7)和式(8)。
式(6)、式(7)和式(8)中,A为ROC曲线下面积,a和b分别为双正态模型的2个参数,Φ表示标准正态分布函数,xˉ和yˉ分别为患者组和非患者组诊断试验结果的均数(假定患者组高于非患者组,μx>μy),sx和sy分别为患者组和非患者组诊断试验结果的标准差。
2.2 多条ROC曲线下面积的比较
在成组设计下,两独立样本所算得的ROC曲线下面积的比较,可令两面积之间的协方差为0;在自身配对设计下,两种诊断方法测定同一组样本,此时,两面积之间的协方差不为0,有较复杂的计算公式。当两条ROC曲线无交叉时,它们ROC曲线下面积的比较可由式(9)计算。
式(9)中的Z值服从或近似服从标准正态分布,查正态分布表可得相应的P值,A1和A2分别为两诊断试验ROC曲线下面积,Var(A1)和Var(A2)分别为两曲线下面积的方差,Cov(A1,A2)为两曲线下面积的协方差,当两诊断试验独立时,此协方差项为0。当两条ROC曲线交叉时,两诊断试验的比较应比较部分ROC曲线下的面积或固定假阳性率时的灵敏度。当需要同时比较多条ROC曲线下面积时,一般需要选定其中之一作为对照,生成比较矩阵,构建复杂且服从χ2分布的检验统计量,见文献[2,4]。
3 实例与SAS实现
3.1 问题与数据结构
3.1.1 问题与数据
【例1】研究者采用某种金标准,将45例受试者中的21例诊断为落基山斑点热(RMSF)(病例组),其余24例为非RMSF(对照组),分别用两种方法测得受试者血钠水平,因篇幅所限,具体数据见文献[5]。问这两种方法诊断性能之间的差异有无统计学意义?
3.1.2 对数据结构的分析
例1的资料涉及3个变量,一是金标准诊断结果(包括患RMSF、非RMSF),二是检测方法(包括方法1、方法2),三是血钠水平。
3.1.3 统计分析方法的选择
如何选择统计分析方法对例1中的资料进行分析,取决于研究目的。第一个目的:分析检测方法和血钠水平对诊断结果的影响是否有统计学意义。此时,适合选用二值结果变量的多重Logistic回归分析[6-7]。第二个目的:基于哪种检测方法得到的血钠水平,对诊断受试者是否患RMSF的诊断性能更好。此时,适合选用基于多重Logistic回归分析的ROC曲线分析。
3.2 仅采用多重Logistic回归分析
3.2.1 将检验方法和血钠水平值分别视为定性和计量原因变量
分别采用method和bs表示“检测方法”和“血钠水平值”。设所需要的SAS程序如下:
【SAS主要输出结果及解释】由glm过程输出的主要结果见表2。
表2 两因素各水平组合下的血钠水平(±s)Table 2 Blood sodium value under the combination of two factors and different levels
表2 两因素各水平组合下的血钠水平(±s)Table 2 Blood sodium value under the combination of two factors and different levels
“disease”的水平“method”的水平数 目0 0 1 1 0 1 0 1 24 24 21 21血钠水平(mmol/L)136.500±5.022 137.417±3.729 130.238±4.918 130.714±4.406
由以上输出结果可知,RMSF患者的平均血钠水平(disease=1)低于非RMBF者的平均血钠水平(disease=0);方法1测定的平均血钠水平(method=1)高于方法2测定的平均血钠水平(method=0)。
由Logistic过程输出的主要结果见表3。
表3 Logistic回归模型中参数的估计和假设检验结果Table 3 Estimation and hypothesis test results of the parameters in the Logistic regression model
由以上输出结果可知,两种检测方法之间差异无统计学意义(χ2=0.207,P=0.649),说明两种检测方法在诊断RMSF方面的性能接近;血纳水平对结果的影响有统计学意义(χ2=22.453,P<0.01),因血钠水平的回归系数为负值且建模的概率为disease=1(即患RMSF),说明RMSF患者较非RMSF者的血钠水平低。
3.2.2 将两次检测的血钠水平作为自变量
分别采用m1和m2表示第1次与第2次血钠水平检测结果。设所需要的SAS程序如下:
【SAS主要输出结果及解释】由Logistic过程输出的主要结果见表4。
表4 Logistic回归模型中参数的估计和假设检验结果Table 4 Estimation and hypothesis test results of the parameters in the Logistic regression model
由以上输出结果可知,两种检测方法检测的血钠水平对预测患RMSF有统计学意义(P均<0.01)。由于对disease=1(患RMSF)建模,又由于m1与m2的回归系数分别为负值与正值,表明方法1检测的血钠水平一般低于方法2。
3.3 基于多重Logistic回归分析并结合ROC曲线分析
3.3.1 以空模型为对照进行ROC曲线下面积比较
设所需要的SAS程序如下:SAS数据步程序与“第3.2.2节”中的数据步相同,下面仅给出SAS过程步程序。
proc logistic data=a1;
model disease(event="1")=m1 m2;
roc m1; roc m2; roc;
roccontrast reference('roc3') / estimate e;
run;
【SAS主要输出结果及解释】与ROC曲线分析有关的计算结果见表5。
表5 ROC曲线下面积及其关联统计量的计算结果Table 5 Calculation results of area under ROC curveand its association statistics
在以上的输出结果中,“模型”代表包含方法1和方法2检测结果的总模型;ROC1代表仅有方法1检测结果的模型;ROC2代表仅有方法2检测结果的模型;ROC3代表空模型。从表格的前3行结果中的95%置信区间不包含0.5可以间接判断出,前3个模型对应的ROC曲线下的面积与0.5之间的差异有统计学意义。不同模型对应的ROC曲线下面积的比较结果见表6。
表6 ROC对比估计和逐行检验结果Table 6 Results of ROC comparative estimation and the row by row test
由以上输出结果可知,3个模型(总模型、ROC1、ROC2)与空模型(ROC3)ROC曲线下面积相比较,P值均<0.01。说明这3个模型对RMSF都具有一定的诊断价值。
3.3.2 以方法2的模型为对照进行ROC曲线下面积比较
设所需要的SAS程序如下:
【SAS主要输出结果及解释】以方法2的模型为对照,与其他模型ROC曲线下面积进行比较,结果见表7。
表7 ROC对比估计和逐行检验结果Table 7 Results of ROC comparative estimation and the row by row test
由以上输出结果可知,3个其他模型与方法2的模型比较,ROC曲线下的面积之间的差异均有统计学意义(P<0.05或0.01)。说明在诊断RMSF方面,方法1比方法2好。
3.3.3 采用score语句输出各诊断评价指标的估计值
设所需要的SAS程序如下:
【SAS主要输出结果及解释】各种诊断试验评价指标[8]的估计值见表8。
表8 各观测点上各种诊断试验评价指标的估计值Table 8 Estimated values of various diagnostic test evaluation indicatorsat each observation point
“19个观测”代表用方法1检测45例受试者,得到了19个不同的血钠水平(m1)。将这19个m1从小到大排序(实现的SAS程序为:proc freq data=a1;tables m1;run;),到第9个m1(m1=133)时的累计频率为0.400,到第10个m1(m1=134)时的累计频率为0.444。由输出结果的最后一行可知,Yonden指数=0.607为最大值,此时对应的概率(近似等于累计频率)为0.402。提示:基于方法1检测结果诊断受试者是否患RMSF,对应的血钠水平的最佳诊断点介于133~134 mmol/L,可近似将血钠水平133 mmol/L作为RMSF的最佳诊断点。
3.4 结论
由“第3.2节”的分析结果可知,采用两种多重Logistic回归模型分析,得到如下两个结论:其一,两种检测血钠水平的方法在诊断RMSF方面的性能基本相同;其二,检测方法1比检测方法2得到的平均血钠水平低。
由“第3.3节”的分析结果可知,采用基于多重Logistic回归分析,并结合ROC曲线分析,得到如下两个结论:其一,两种检测血钠水平的方法在诊断RMSF方面的准确度不同,方法1优于方法2;其二,基于ROC曲线分析,可以获得血钠水平的诊断点的估计值。
4 讨论与小结
4.1 讨论
在“第3.2节”的分析中,显示的“观测数(即样本含量)”为90例,这是因为对每位受试者进行了两次重复观测,故得45×2=90。严格地说,该资料所对应的设计类型为具有1个重复测量因素的两因素设计(试验分组因素为“是否患RMSF”,重复测量因素为“两种检测方法”)。由于两次检测的指标都是血钠水平,故对每位受试者测得的两个血钠水平数据可以相减(属于自身配对),得到差量(md)。这样,就消除了一个自变量(即两种检测方法)。此时,就可用差量md作为唯一的自变量,以disease作为二值结果变量,构建一重Logistic回归模型,分析的结果表明:md对结果的影响无统计学意义,也就意味着两种检测方法的诊断性能基本相同。但这个结论与“第3.3节”所得的结论(方法1的诊断性能好于方法2)不一致。值得一提的是:“第3.2.1节”的分析法相当于两血钠水平均值之间的比较,而“第3.3.2节”的分析法相当于两条ROC曲线下面积之间的比较。结果表明,“第3.3.2节”的分析法对资料的利用率高于前者,故所得结论更可信。
4.2 小结
本文介绍了常用诊断指标的统计描述和诊断资料的ROC曲线分析方法;扼要介绍了ROC曲线下面积的计算和多条ROC曲线下面积的比较;针对一个诊断试验资料,采取了两种分析策略。第一种,仅采用多重Logistic回归分析;第二种,基于多重Logistic回归分析,再使用ROC曲线分析。从两种分析策略得到的结果和结论来看,第二种分析策略比第一种分析策略好,获得了更丰富的结果和更合理的结论。