
ROC 曲线与多元回归分析目的单个标记物的诊断能力往往有限多个标记物联合使用可提高整体区分能力。ivdtools的roc()除单标记物 ROC 外还支持用多元 Logistic回归mlr()把多个标记物组合成一个联合得分 计算其 AUC并对新样本做阳性概率预测。本文演示两个标记物x1、x2的联合分析先比较单标记物 AUC再拟合多元Logistic 回归模型 绘制多曲线 ROC并预测新样本。联合模型在训练数据上的AUC 是表观性能推广前应在独立数据上 验证参考变量必须是二分类。::: celllibrary(ivdtools) library(readr):::函数概述函数 主要用途 关键输入或输出roc()创建 ROC 对象cols支持多个标记物auc()单标记物 AUC 逐列mlr()多元 Logistic 回归cols、name需先auc()plot()ROC 曲线mlrall叠加联合模型曲线predict()预测阳性概率newdata、column_mapsummary()汇总示例多标记物联合分析读取和核验数据::: cellmlr_dat - read_csv(./data/roc-multimarker.csv, show_col_types FALSE) mlr_dat - as.data.frame(mlr_dat) str(mlr_dat):::::: celltable(mlr_dat$ref):::数据包含 120 例正、负各 60两个定量标记物 x1、x2。创建对象与单标记物 AUC::: cellro2 - roc(mlr_dat, cols c(x1, x2), reference ref, id sid) ro2 - auc(ro2):::::: cellro2$auc_table:::x1 的 AUC ≈ 0.922x2 的 AUC ≈ 0.832单标记物中 x1 区分能力更强。多元 Logistic 回归用两个标记物联合建模::: cellro2 - mlr(ro2, cols c(x1, x2), name combined):::::: cellro2$mlr_results$combined$fit_summary ro2$mlr_results$combined$auc:::联合模型的 AUC ≈ 0.96495% CI [0.930,0.999]高于任一单标记物说明两标记物联合确有增益。参数说明mlr(cols, name, ...)用二分类 Logistic回归glm拟合选中标记物name为 模型名自动生成MLR01、MLR02…...透传给glm。必须先执行auc()才能调用mlr()。 系数解释为对数优势比联合 AUC在拟合所用数据上计算属于表观性能。多曲线 ROC 图::: cellplot(ro2, mlr all):::plot(ro2, mlrall)同时画出各单标记物与联合模型的 ROC曲线便于比较。对新样本预测::: cellpredict(ro2, newdata data.frame(x1 c(7, 12), x2 c(16, 21))):::predict()返回各预测变量、阳性概率pred_prob、标准误与置信区间以及默认阈值0.5 下的 预测类别pred_class。两例分别得到 0.12 与 0.98的阳性概率与期望方向一致。参数说明当newdata的列名与建模时不一致时用命名向量column_map映射 如column_map c(new_x1 x1)。若对象中有多个模型predict()需用mlr指定模型名。汇总::: cellsummary(ro2):::结果判读要点联合增益联合 AUC高于各单标记物仅说明线性组合有增益是否显著改善应结合置信区间与临床决策需要判断。表观性能训练数据上的 AUC是乐观估计必须在独立验证集上重估避免过拟合误判。共线性与分离标记物高度相关或完全分离时 Logistic回归可能不稳定或无法收敛。事件数多元模型每个参数需要足够的事件数事件过少时慎用。cutoff与决策联合得分的最终判定阈值应结合临床代价与方案不限于默认0.5。变量选择mlr()一次拟合给定标记物集合多组变量比较应在方案中预设避免反复试错。