生存分析笔记
https://lifelines.readthedocs.io/en/latest/Survival analysis with lifelines.html
前置知识
- (非)参数估计:“参数” 通常指的是用来描述数据集分布特征的量,例如均值、方差、比例或回归系数
- 参数估计:指基于样本数据估计总体参数(如总体均值或方差)的过程,通常假设数据遵循某种已知的概率分布(如正态分布)
- 非参数估计:不依赖于数据遵循特定的分布假设
参数估计有一个“拟合”过程,非参数则没有
1 | from lifelines import WeibullFitter |
比较分布手段
- QQplot:将它们的分位数(quantiles)进行对比。它通常用于检验一个数据集是否遵循某个特定分布,例如正态分布
- X轴表示理论分布的分位数,而Y轴表示样本数据的分位数
- Shapiro-Wilk 测试
单变量模型
Kaplan-Meier
问题:布什政权存在了8年(观测到“下台”事件),而肯尼迪在职两年被刺杀(未观测到“下台”事件)。现在有一组数据,记录了民主政权和封建王朝执政者的当权时间,试分析民主政权和封建王朝政权的“生存期”。
- 输入:当权时间,是否观测到事件
- 示例:当权时间[5, 7, 3],是否观测到事件[1, 1, 0]
- 输出:survival function,给定时间t,计算尚未发生事件的概率p
1 | from lifelines import KaplanMeierFitter |
此外,使用下面的代码会增加显示at risk
风险中、censored
截断和events
事件三个指标:
- at risk: 在任何给定时间点,“at risk” 指的是那些仍然在观察中且尚未发生事件(例如死亡、复发等)的个体数量。
- censored: 对于某些个体而言,研究结束时他们还没有经历感兴趣的事件。原因可能是他们丢失了随访、退出研究,或者研究结束时他们还活着且没有经历事件。
- events: 指在研究期间发生的感兴趣的事件,例如病人的死亡或疾病的复发。
Nelson-Aalen
非参数统计
- 输入:同K-M
- 输出:(cumulative) hazard function, 给定时间t,输出截至t时刻总死亡人数n
- 对cumulative hazard function求导即为hazard function,但累积函数更稳定
1 | from lifelines import NelsonAalenFitter |
Weibull model
参数估计方法