用途:scikit-survival 是构建在 scikit-learn 之上的 Python 生存分析库,用于处理右删失、左删失或区间删失的时间到事件数据,建立协变量与事件发生时间之间的关系。
主要能力:提供 Cox 比例风险模型(CoxPHSurvivalAnalysis、CoxnetSurvivalAnalysis、IPCRidge)、集成方法(RandomSurvivalForest、GradientBoostingSurvivalAnalysis、ComponentwiseGradientBoostingSurvivalAnalysis、ExtraSurvivalTrees)、生存支持向量机(FastSurvivalSVM、FastKernelSurvivalSVM、HingeLossSurvivalSVM、ClinicalKernelTransform),以及 SurvivalTree。评估指标包括 Harrell 与 Uno 一致性指数、时间依赖 AUC、Brier 分数及积分 Brier 分数,并提供 Kaplan-Meier、Nelson-Aalen 估计和竞争风险累积发生率。
使用方式:用 sksurv.util.Surv 从数组或 DataFrame 构造生存结果;建模前需处理缺失值、编码分类变量、标准化特征并划分训练测试集。模型可接入 scikit-learn 的 Pipeline、交叉验证和 GridSearchCV,使用 as_concordance_index_ipcw_scorer() 等评分器。示例:from sksurv.linear_model import CoxPHSurvivalAnalysis; 拟合后 estimator.predict 得到风险分数。
适用场景:医学与流行病学等时间到事件研究、高维特征筛选、非线性关系建模以及多模型性能比较。
限制:资料未提供该技能的独立收费、价格或平台信息;删失率高于 40% 时应使用 Uno 一致性指数,SVM 与正则化 Cox 需标准化特征,Cox 模型需验证比例风险假设,竞争事件不应简单当作删失处理,随机生存森林应使用置换重要性。详细内容参见 references 目录下的参考文件与官方文档。