Analiza przeżycia w Pythonie
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
Krok 1) Dopasowanie modeli parametrycznych w lifelines
Krok 2) Porównanie właściwości AIC_ każdego modelu
Krok 3) Preferowany jest model z najniższą wartością 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(): wbudowana funkcja lifelines automatyzująca porównania AIC między modelami parametrycznymi.lifelines.Sposób użycia:
T: czasy trwania, E: cenzurowaniebest_model, best_aic_ = find_best_parametric_model(event_times=T,
event_observed=E,
scoring_method="AIC")
print(best_model)
<lifelines.WeibullFitter:"Weibull_estimate",
fitted with 686 total observations, 387 right-censored observations>
y = x.
Krok 1) Dopasowanie modeli parametrycznych w lifelines.
Krok 2) Narysowanie wykresu Q-Q dla każdego modelu.
Krok 3) Preferowany jest model, którego wykres Q-Q jest najbliższy y = x.
from lifelines.plotting import qq_plotfor model in [WeibullFitter(), LogNormalFitter(), LogLogisticFitter(), ExponentialFitter()]: model.fit(T, E) qq_plot(model)plt.show()

Analiza przeżycia w Pythonie