我正在尝试学习如何在生命线包中使用 Kaplan-Meier 生存估计模型。文档说该函数KaplanMeierFitter.fit返回“ a modified self, with new properties like 'survival_function_'.”我检查了它survival_function_的内容是什么 -它似乎包含数据集中所有玩家在每个时间间隔的平均生存概率。例如,在我的数据集中,有 66 个月和大约 250,000 名玩家(即我们试图预测其死亡事件的个人 - 其中 75% 已经死亡,其余 25% 是删失数据,即他们的死亡有未观察到),因此survival_function_包含以下内容:
>>> kmf.survival_function_
KM_estimate
timeline
-1.0 1.000000
0.0 0.995473
1.0 0.779609
2.0 0.621312
3.0 0.508698
4.0 0.424205
5.0 0.366714
6.0 0.324090
7.0 0.289432
8.0 0.259339
9.0 0.234256
10.0 0.212542
11.0 0.192735
12.0 0.172880
13.0 0.157821
14.0 0.144604
15.0 0.132614
16.0 0.121743
17.0 0.112202
18.0 0.103710
19.0 0.095829
20.0 0.088811
21.0 0.082302
22.0 0.076773
23.0 0.071249
24.0 0.065752
25.0 0.060534
26.0 0.056082
27.0 0.051978
28.0 0.048073
... ...
37.0 0.023696
38.0 0.020562
39.0 0.017846
40.0 0.015783
41.0 0.013817
42.0 0.012253
43.0 0.010645
44.0 0.009354
45.0 0.008186
46.0 0.007195
47.0 0.006274
48.0 0.005486
49.0 0.004656
50.0 0.003948
51.0 0.003391
52.0 0.002823
53.0 0.002352
54.0 0.002004
55.0 0.001655
56.0 0.001388
57.0 0.001114
58.0 0.000932
59.0 0.000707
60.0 0.000536
61.0 0.000343
62.0 0.000193
63.0 0.000080
64.0 0.000038
65.0 0.000016
66.0 0.000000
68 rows × 1 columns
它告诉我们整个人口在每个时间段的平均生存概率,包括死亡和审查的玩家。它没有告诉我们每个被审查玩家的生存概率,这是我感兴趣的。我如何找到它?它可以详细到给出每个玩家在 66 个月中每个月的生存概率。或者,如果这不可能,我可以让每个玩家在未来某个固定时间(比如 3 个月或其他任何时间)的生存概率(这是 66 个时间段中的一个)。
换句话说,不是输出是66x1平均生存概率的向量,而是我可以得到一个维度的输出矩阵txn,其中t是时间段n的数量,是数据集中被审查的玩家的数量,以及条目 (i,j ) 是玩家i在时间段内的生存概率j吗?
如果 KM 方法无法做到这一点,请随时建议其他方法,以便获得每个人的生存估计。谢谢你。