Python 中的生存分析
Shae Wang
Senior Data Scientist

from lifelines import WeibullFitter
from lifelines import ExponentialFitter
from lifelines import LogNormalFitter
from lifelines import LogLogisticFitter
from lifelines import GeneralizedGammaFitter
步骤 1)在 lifelines 中拟合参数模型
步骤 2)打印并比较每个模型的 AIC_ 属性
步骤 3)AIC 值越低越好
from lifelines import WeibullFitter,
ExponentialFitter,
LogNormalFitter
wb = WeibullFitter().fit(D, E)
exp = ExponentialFitter().fit(D, E)
log = LogNormalFitter().fit(D, E)
print(wb.AIC_, exp.AIC_, log.AIC_)
215.9091 216.1183 202.3498
find_best_parametric_model():lifelines 内置函数,用于自动比较各参数模型的 AIC。lifelines 提供的每个参数模型。如何使用?
T:持续时间,E:删失best_model, best_aic_ = find_best_parametric_model(event_times=T,
event_observed=E,
scoring_method="AIC")
print(best_model)
<lifelines.WeibullFitter:"Weibull_estimate",
已拟合 686 条观测,387 条右删失观测>
y = x 上。
步骤 1)在 lifelines 中拟合参数模型。
步骤 2)绘制各模型的 QQ 图。
步骤 3)离 y = x 最近的 QQ 图更优。
from lifelines.plotting import qq_plotfor model in [WeibullFitter(), LogNormalFitter(), LogLogisticFitter(), ExponentialFitter()]: model.fit(T, E) qq_plot(model)plt.show()

Python 中的生存分析