生存曲线的number at risk Python 生存曲线的意义_分析模型


前文我们初步介绍了生存分析所涉及的生存数据,明白了:做生存分析最特殊的一点是分析时要纳入研究对象的“生存时间”,更一般的是指:出现某种特定结局的时间。

今天的文章,我们更进一步地来学习如何看懂生存函数和生存曲线。

在进入正题之前,我们需要首先明确两个概念:生存概率与死亡概率。

  1. 生存概率(survival probability),用p表示,是指某时段开始时存活的个体,到该时段结束时仍存活的可能性。

说起来好像有点儿吓人,但是计算起来很简单:


生存曲线的number at risk Python 生存曲线的意义_分析模型_02


2. 死亡概率(probability of death),与生存概率相对, 用 q 表示,指某时段开始时存活的个体,在该时段内死亡的可能性。如年死亡概率表示年初尚存人口在今后1年内死亡的可能性。


生存曲线的number at risk Python 生存曲线的意义_时间段_03


p + q = 1。

介绍完这两个基础概念后,我们来看看什么叫生存函数(survival function)。

教科书的定义是:生存函数表示观察对象的生存时间T大于某个时间的概率,常用 S(t)表示。



生存函数又称为累积生存率,简称生存率(survival rate)。

例如,前文谈到的肺癌患者,其生存函数可以写作:


代表患者治疗后存活时间大于18个月的概率,该值越大表明治疗的疗效越好。

这里有一个点很容易混淆,S(t)表示生存率,而前面我们用p代表的是生存概率。一个是生存率,另一个是生存概率,难道不是一回事儿吗?

还真不是!生存率与生存概率虽然一字之差但定义却不大相同(当然两者也存在联系)。

还是上面的T=18的例子,对于生存率和生存概率,我们可以分别这样来写:

生存率:



生存概率:



看上面的式子,生存率的计算是用“>”,而生存概率的计算是“=”。

由此,生存概率是指单位时间上生存的可能性,生存率是某个时间段(由一个或多个单位时间组成的时间段)生存的可能性,是多个单位时间生存概率的累计结果。

比如评价肺癌治疗后3年的生存率,是指第一年存活,第二年存活,直至第三年仍然存活的累积概率,而这3年间每一年都会有不同的生存概率,两者之间的关系如下图:


生存曲线的number at risk Python 生存曲线的意义_分析模型_04


数学上,生存率和生存概率也有如下的计算关系:

对于不同单位时间的生存概率


,可利用概率乘法原理相乘得到


时刻生存率,即


生存曲线的number at risk Python 生存曲线的意义_函数相关系数大小意义_05


例如,



除了计算某个时刻(从开始到该时刻的整个时间段)的生存率之外,我们还可以利用图示法更加直观地描述生存率随生存时间的变化而变化。

以生存时间


为横坐标,各时间点的生存率


为纵坐标,将各个时间点的生存率连接在一起绘制而成的连续曲线称之为

生存曲线(survival curve)。

下图即为根据某项研究制定的生存曲线:横轴是生存时间,纵轴是生存率。


生存曲线的number at risk Python 生存曲线的意义_函数相关系数大小意义_06


如上图,我们可以发现,当T=11.124时,对应的生存率是0.5。

这意味着,此时,生存函数取值为0.5,表示,有50%的个体可以存活到比11.124更长的时间,这个生存时间一般称为“中位生存期或半数生存期”,记做





简单练习一下,如果我们知道


,也就意味着有50%的患者经过治疗后可以存活20个月以上,所以,这里的“20”就是中位生存期或半数生存期。


结合上图,我们可以总结:生存函数是一个随时间下降的函数,t = 0,生存函数值为1(


),表示每个患者都处于存活状态;


随着时间的延长,部分患者死亡,从而导致生存函数的值会逐渐降低。

从图形上看,当时间趋于无穷大时,生存函数的值趋于0,意味着,长远来看,每位患者的生存时间都是有限的,不可能无限活下去。

在实际应用中如何来估算生存率呢?

也很简单,若数据中无删失值(不懂什么是删失,戳此阅读,某时刻的生存率可用下式估计(有删失的情况要更复杂一些):


生存曲线的number at risk Python 生存曲线的意义_函数相关系数大小意义_07


一般而言,生存分析的主要应用如下:

1.描述生存时间的分布特点。通过生存时间和生存结局的数据估计平均存活时间及生存率,绘制生存曲线,根据生存曲线分析其生存特点等。

2.比较生存曲线。通过相应的假设检验方法对不同样本的生存曲线进行比较,以推断各总体的生存状况是否存在差别,比较不同治疗方法预后效果的差异。

3.分析影响生存状况的因素。通过生存分析模型来探讨影响生存状况的因素,通常以生存时间和结局作为因变量,而将可能的影响因素作为自变量,通过拟合生存分析模型,筛选具有统计学意义的生存状况的影响因素。

具体在实际应用中如何进行生存函数的估计而实现上述应用,这就是我们下篇文章将要给大家带来的内容了。