SurvivalFeatureSelector
生存分析多方法特征筛选 + Cox 建模平台
各方法筛选结果汇总
下表展示每种方法筛选出的变量列表。
Venn 图
各方法筛选结果集合的维恩图,展示各集合数量及交集数量。
变量被选次数热力图
行=自变量,列=筛选方法。绿色=被选中,灰色=未选中。
逐步回归变量变化轨迹
展示每一步加入或剔除的变量及对应的AIC值。
SurvivalFeatureSelector 使用指南
-
数据准备
:指定生存时间列和事件状态列(0=删失,1=事件)。支持单文件上传(自动按6:2:2划分)或分别导入训练/验证/测试集。Demo 数据为 survival::pbc 数据集(276例18变量)。
-
特征筛选
:从6种方法中选择>=3种。每种方法在
训练集
上独立运行,选出各自认为重要的变量。
-
取交集
:支持严格交集(所有方法都选中)或投票交集(>=N种方法选中)。交集结果作为逐步回归的候选变量。
-
逐步回归
:在训练集上进行前向/后向/双向逐步Cox回归,按AIC准则优化模型。
-
Cox 建模
:用逐步回归选出的变量建立 Cox 比例风险模型,输出模型摘要(HR、95%CI、P值)和系数表。
-
模型评价
:在训练/验证/测试集上全面评价模型性能,包括以下内容:
-
Nomogram 列线图
:基于 rms::cph 模型,预测指定时间点的生存概率,概率标签为 0.05/0.25/0.50/0.75/0.95。可通过时间点选择按钮切换三个时间点(33%/67%/90% 分位数)。
-
校准曲线
:rms::calibrate bootstrap 法评估预测概率与实际概率的一致性,随时间点选择联动。
-
ROC 曲线
:基于 timeROC 的训练集时间相关 ROC,AUC 值标注在图右下角,随时间点选择联动。
-
AUC 对比
:三个集合(训练/验证/测试)在所选时间点的 AUC 柱状图对比,随时间点选择联动。
-
PH 假定检验
:Schoenfeld 残差检验比例风险假定,P > 0.05 表示满足假定。
-
KM 校准曲线
:将风险分为低/中/高三组,比较三组生存曲线的差异。
-
KM 风险分层
:以中位线性预测值为界分为高/低危两组,比较生存差异。
-
DCA 决策曲线
:决策曲线分析,评估临床净获益。三张图统一使用
训练集的中位时间点
作为评价时间。
最佳实践建议
-
推荐组合
:Cox-LASSO + RSF + 单变量Cox(线性多变量 + 非线性多变量 + 线性单变量)
- 变量数 > 200 时,先用单变量Cox或互信息粗筛到50-100个,再用Cox-LASSO/RSF精选
- 交集后变量 < 3 个时,考虑放宽投票阈值或增加筛选方法
- 建模后检查Schoenfeld残差,若PH假定不满足,考虑分层或时变系数
- Nomogram 和校准曲线依赖 rms::cph 重新拟合模型(非原始 Cox 模型),时间点选择会影响 Nomogram 的生存概率轴和校准曲线的评价时间