0

我正在编写一些 python 代码来使用KM Fitter做 Kaplan-Meier (KM) 曲线,并且通常在同一个图中绘制 4 条曲线来比较不同的组。获得 KM 曲线的基本方法是:

from lifelines import KaplanMeierFitter

#Create the KMF object
KM_curve = KaplanMeierFitter()

#Give data to object. Status is 0 if alive, 1 if deceased (in my case)
KM_curve.fit (durations=My_Data["Time"], event_observed=My_Data["Status"])

#I do a figure in which I use this line 4 times (one per group)
KM_curve.plot(ci_show=False)

有了这 4 行代码和一个 pandas 数据框(这里称为 My_Data),KM Fitter 会自动进行所有计算和绘图,但我想知道是否有人知道如何过早地停止曲线。我已经完成了大约 50 个不同的图表,它们看起来不错,并为我提供了我需要的信息,但有时某些曲线的最后一部分会急剧下降到 0%(垂直)或非常接近它。这很奇怪,因为我的 x 轴末端没有一个组有 0 个幸存者 [参见本例中的红线 https://i.stack.imgur.com/bn6Vy.png ]

我确实读过 KM 曲线很好地看到了中间部分的趋势,但曲线的最后一部分可能会产生误导,必须仔细检查。如果该组中没有足够的患者,则尤其如此,因此,生存百分比估计值急剧下降。从事生物信息学研究的人告诉我,她通常会在剩下 10% 的患者时停止绘制曲线,以防止出现此问题。是否可以在 python KMF 中做到这一点?

4

1 回答 1

1

有几种方法可以实现这一点:

1.

ax = KM_curve.plot(ci_show=False)
ax.set_xlim(0, <your upper limit here>)
KM_curve.plot(ci_show=False, loc=slice(0, <your upper limit here>))

在此处查看更多文档: httpsloc : //lifelines.readthedocs.io/en/latest/fitters/univariate/KaplanMeierFitter.html#lifelines.fitters.kaplan_meier_fitter.KaplanMeierFitter.plotiloc

于 2020-12-07T18:36:28.183 回答