统计和机器学习工具箱™功能ecdf
通过使用Kaplan-Meier非参数方法产生经验累积风险,幸存者和累积分布函数。幸存函数的Kaplan-Meier估计也被称为采用估计量.
Kaplan-Meier方法使用汇总在生命表中的生存数据。生命周期表根据升序的故障次数对数据进行排序,但您不必以有序的方式输入故障/生存时间即可使用ecdf
.
生命表通常包括:
次失败
在某个时间/时间段内失败的项目数
在一个时间/时间段内审查的项目数
在一个时间/时间段开始时处于风险中的项目数量
处于危险中的人数是每个时期开始时的幸存者总数。在第一阶段开始时处于危险中的人数是终生研究中的所有个体。在每一个剩余时期的开始,处于风险中的人数被失败的人数加上在前一个时期结束时审查的人数所减少。
这个生命表显示了虚构的生存数据。在第一次故障时间开始时,有7个项目处于危险之中。在时间4,三个失败。所以在时间7开始的时候,有4个项目处于危险之中。只有一个在时间7时失败,所以在时间11开始时有风险的数字是3。两个在时间11失败,所以在时间12开始时,有风险的数字是1。剩余的项目在时间12失效。
故障时间(t) | 失败的数量 | 处于危险中的人数 |
---|---|---|
4 | 3. | 7 |
7 | 1 | 4 |
11 | 2 | 3. |
12 | 1 | 1 |
您可以使用下面描述的生命表来估计危险、累积危险、生存和累积分布函数。
累积危险率(故障率)
每个时期的风险率是给定时期内失败的数量除以该时期开始时幸存的个人数量(处于风险中的人数)。
故障时间(t) | 危险率(h(t)) | 累积危险率 |
---|---|---|
0 | 0 | 0 |
t1 | d1/r1 | d1/r1 |
t2 | d2/r2 | h(t1) +d2/r2 |
… | … | … |
tn | dn/rn | h(tn- 1) +dn/rn |
生存概率
对于每个时期,生存概率是风险率的补的乘积。第一个时间段开始时的初始生存概率为1。如果每个时期的风险率为h(t我),则幸存概率为。
时间(t) | 生存概率(年代(t)) |
---|---|
0 | 1 |
t1 | 1 * (1 -h(t1)) |
t2 | 年代(t1) * (1 -h(t2)) |
… | … |
tn | 年代(tn- 1) * (1 -h(tn)) |
累积分布函数
由于累积分布函数(cdf)和存活函数是互为补充的,因此可以使用F(t) = 1 -年代(t)。
您可以计算本页第一个表中模拟数据的累积风险率、存活率和累积分布函数,如下所示。
t | 失败号码(d) | 处于危险中的人数(r) | 故障率 | 生存概率 | 累积分布函数 |
---|---|---|---|---|---|
4 | 3. | 7 | 3/7 | 1 - 3/7 = 4/7 = 0.5714 | 0.4286 |
7 | 1 | 4 | 1/4 | 4/7*(1 - 1/4) = 3/7 =。4286 | 0.5714 |
11 | 2 | 3. | 2/3 | 3/7*(1 - 2/3) = 1/7 = 0.1429 | 0.8571 |
12 | 1 | 1 | 1/1 | 1/7*(1 - 1) = 0 | 1 |
本例中的速率基于离散的故障时间,因此计算不一定遵循中基于导数的定义什么是生存分析?
输入数据并计算这些度量的方法如下ecdf
.数据不一定要按升序排列。假设故障时间存储在一个数组中y
.
Y = [4 7 11 12];Freq = [3 1 2 1];[f,x] = ecdf(y,“频率”、频率)
F = 0 0.4286 0.5714 0.8571 1.0000 x = 4 4 7 11 12
当您删除数据时,生命表可能如下所示:
时间(t) | 号码失败(d) | 审查 | 处于危险中的人数(r) | 故障率 | 生存概率 | 累积分布函数 |
---|---|---|---|---|---|---|
4 | 2 | 1 | 7 | 2/7 | 1 - 2/7 = 0.7143 | 0.2857 |
7 | 1 | 0 | 4 | 1/4 | 0.7143*(1 - 1/4) = 0.5357 | 0.4643 |
11 | 1 | 1 | 3. | 2/3 | 0.5357*(1 - 1/3) = 0.3571 | 0.6429 |
12 | 1 | 0 | 1 | 1/1 | 0.3571*(1 - 1) = 0 | 1.0000 |
在任何给定的时间,被审查的项目也被考虑在风险的总数中,危险率公式是基于失败的数量和风险的总数。在每期开始时更新有风险的数量时,前一期失败和审查的总数从该期开始时的有风险的数量中减少。
在使用ecdf
,还必须使用二进制变量数组输入审查信息。输入1表示屏蔽数据,输入0表示准确的故障时间。
Y = [4 4 4 7 11 11 12];Cens = [0 1 0 0 1 0 0];[f,x] = ecdf(y,“审查”岑)
F = 0 0.2857 0.4643 0.6429 1.0000 x = 4 4 7 11 12
ecdf
,默认生成累积分布函数值。您必须使用可选的名称-值对参数指定幸存者函数或危险函数。您还可以将结果绘制成如下图。
图()ecdf (y,“审查”岑,“函数”,“幸存者”);
图()ecdf (y,“审查”岑,“函数”,“累积风险”);
b[1]考克斯博士和奥克斯博士。生存数据分析.伦敦:查普曼和霍尔,1984。
j·F·劳利斯寿命数据的统计模型和方法.霍博肯,新泽西州:Wiley-Interscience, 2002。
[3]克莱因鲍姆,D. G.和M.克莱因。生存分析.《生物与健康统计》第二版。施普林格,2005年。