开始时概率低于1的生存分析

Survival analysis with a probability lower than 1 at the start

我正在尝试创建一个图表,显示一首歌曲随时间(图表中的几周)进入 Billboard Hot 100 前 10 名的概率。当一首歌进入排行榜时,概率应该是 0.15 左右,接下来的每个星期都会下降。因此图表应该是从 0.15 开始的下降曲线,x(图表中的周数)和 y(达到前 10 名的概率)。

1) 我可以使用 Kaplan-Meier 曲线来做这个吗?

2) 如何在 R(生存包)中创建不是以 1 开始的概率的 Kaplan-Meier 曲线?

有点...有点...不是真的。

首先,您可能不需要绘制生存函数的典型 Kaplan-Meier 曲线。您需要补码或累积发生率。 (1 - S(x))。这将以0的概率开始剧情,表示没有歌曲在它们发布的那一刻进入前十(有点,有点)

对于发行后第一周排在前列的歌曲,需要将跟进时间标记为0,前十标志标记为1。这样,虽然技术上开始了step功能为零时,它将立即上升到首周进入前十名的歌曲比例。

例如:

library(survival)

df <-
  data.frame(song = c("A", "B", "C", "D", "E"),
             # number of weeks followed before reaching top ten
             # (or truncation)
             weeks_followed = c(0, 3, 4, 13, 1),
             topten = c(1, 0, 1, 0, 1),
             stringsAsFactors = FALSE)

fit <- survfit(Surv(weeks_followed, topten) ~ 1,
               data = df)

plot(fit,
     conf.int = FALSE,
     # 1 - survival 
     fun = function(x) 1 - x,
     xlim = c(0, 13),
     ylim = c(0, 1))

产生以下图:

这是一个有趣的问题。我想也许 stats.stackexchange.com 会有更多话要说。

我不认为这类似于生存,因此我认为 Kaplan-Meier 或任何其他生存估计器不会做您正在寻找的事情。

这是一种时间到事件的问题;在网络上搜索该术语可能会找到一些资源。但这不是生存或可靠性问题,因为所讨论的事件最终不会发生在所有受试者身上(就像死亡或机械故障一样)。事实上,有问题的事件非常罕见。

我的建议是硬着头皮自己计算概率,计算进入前 10 名的歌曲。你提到的基本语句只是计算 p[k] = m[k]/n[k] 其中为方便起见,我定义了 m[k] =(在排行榜上停留至少 k 周并最终进入前 10 名的歌曲数量)和 n[k] =(在排行榜上至少停留 k 周的歌曲数量)。我认为 p[k] 在 k 中不一定是单调的——如果那里有一个凸起,我不会感到惊讶。无论如何,要寻找一些东西。

从排行榜上掉下来又回到排行榜上的歌曲有点乱。我的建议是把它们当作它们一直在图表上一样对待。但是您可能对如何处理它们有不同的想法。

我可以看到一个有趣的变化。 p[j, k] =(在排行榜上至少 k 周后最终进入前 10 名的歌曲比例,当前排行榜位置为 j)怎么样?还是一样,但初始位置是 j?毫无疑问还有其他人。

祝你好运,玩得开心。