离散时间生存分析——生存函数的正确写法

机器算法验证 生存 离散数据 冒险
2022-04-05 19:40:27

我已经看到了几种在离散时间生存分析中编写(以及计算和解释)幸存者函数的方法,我想知道哪个是正确的,或者它们是否都是正确的,但是问题的解释和/或设置是不同的,我错过了.

这是一个例子。

  • 客户在银行开户。
  • 记录开盘月份和收盘月份,离散随机变量 T 在集合 {0,1..,23} 中。23 岁以后,有右删失。T 表示开盘和收盘之间跨越的月数。例如:
  • 在 2012 年 1 月开业并在 2012 年 1 月关闭的客户标记为 0。
  • 在 2012 年 1 月开业并在 2012 年 2 月关闭的客户标记为 1

区间的形式为 [a,a+1),其中 a=0,..,A。

计算以下危害 h(t)。

例如,客户在同一个月打开和关闭,概率为 0.019194。

问题: 构造幸存者函数的正确方法是什么?

  1. 我看到一些来源将 S(t) 设置为事件在周期 t 之后发生的概率: S(t) = Pr(T>t)这是下面的黄色列。计算为 S(t) =t=0t(1h(t))
  2. 其他人将设置第一个周期 S(0) = 1,然后继续。这似乎是在说 S(t) = Pr(T>=t )。计算为 S(t) =t=0t(1h(t1))

在连续情况下,我想 Pr(T>t) 和 Pr(T>=t) 之间没有关系,但在离散情况下它确实如此。

在此处输入图像描述

1个回答

不幸的是,答案是两者都被使用。在连续的情况下,您是对的,区别并不重要。在离散情况下,解释会略有不同,因此清晰很重要。

根据我的经验,生存函数最常见的定义是S(t)=Pr(T>t)所以会匹配你的黄色列。这是用于推导 Kaplan-Meier 估计量的一个:S^(t)=individuals with T>ttotal individuals=j=1k(1djrj)在哪里dj是区间内的事件数j,rj是区间内处于风险中的个体数量j, 和djrj=h(t)

一个重要的注意事项是生存函数应该从S(0)=1如果 0 是第一个时间点,在没有左删失的情况下(即假设没有人开始跟进已经发生的事件)。在您的示例中,我假设在 2012 年 1 月开设和关闭银行账户的人在关闭账户之前打开了该账户;因此,如果缩短时间间隔(例如使用周或天作为时间尺度),那么 S(0) 在这两种情况下都等于 1。

两种定义之间的区别有多大可能取决于具体的应用。两种计算之间的分歧程度可能取决于随访的时间长短、事件的频率、联系的数量以及如何考虑这些。

此外,在许多应用中,我们感兴趣的是比较两组之间的风险或生存率,而不是特定组中的绝对生存率或风险。在这种情况下,我认为区别应该更不重要,但我必须检查一下才能确定。

有关生存分析的更多详细信息S(t)明确定义为Pr(T>t),请参阅:Allison:使用 SAS 系统进行生存分析

有关更多详细信息,请使用S(t)=Pr(T>=t),请参阅:科莱特:医学研究中的生存数据建模,第 2 版。(注意,大部分分析细节与 Allison 中的相同,但解释可能不同)