# GeneralizedGammaFitter¶

class lifelines.fitters.generalized_gamma_fitter.GeneralizedGammaFitter(*args, **kwargs)

This class implements a Generalized Gamma model for univariate data. The model has parameterized form:

The survival function is:

$\begin{split}S(t)=\left\{ \begin{array}{} 1-\Gamma_{RL}\left( \frac{1}{{{\lambda }^{2}}};\frac{{e}^{\lambda \left( \frac{\log(t)-\mu }{\sigma} \right)}}{\lambda ^{2}} \right) \textit{ if } \lambda> 0 \\ \Gamma_{RL}\left( \frac{1}{{{\lambda }^{2}}};\frac{{e}^{\lambda \left( \frac{\log(t)-\mu }{\sigma} \right)}}{\lambda ^{2}} \right) \textit{ if } \lambda \le 0 \\ \end{array} \right.\,\!\end{split}$

where $$\Gamma_{RL}$$ is the regularized lower incomplete Gamma function.

This model has the Exponential, Weibull, Gamma and Log-Normal as sub-models, and thus can be used as a way to test which model to use:

1. When $$\lambda = 1$$ and $$\sigma = 1$$, then the data is Exponential.

2. When $$\lambda = 1$$ then the data is Weibull.

3. When $$\sigma = \lambda$$ then the data is Gamma.

4. When $$\lambda = 0$$ then the data is Log-Normal.

5. When $$\lambda = -1$$ then the data is Inverse-Weibull.

6. When $$\sigma = -\lambda$$ then the data is Inverse-Gamma.

After calling the .fit method, you have access to properties like: cumulative_hazard_, survival_function_, A summary of the fit is available with the method print_summary().

Important

The parameterization implemented has $$\log\sigma$$, thus there is a ln_sigma_ in the output. Exponentiate this parameter to recover $$\sigma$$.

Important

This model is experimental. It’s API may change in the future. Also, it’s convergence is not very stable.

Parameters:

alpha (float, optional (default=0.05)) – the level in the confidence intervals.

Examples

from lifelines import GeneralizedGammaFitter

ggf = GeneralizedGammaFitter()
ggf.fit(waltons['T'], waltons['E'])
ggf.plot()
ggf.summary

cumulative_hazard_

The estimated cumulative hazard (with custom timeline if provided)

Type:

DataFrame

hazard_

The estimated hazard (with custom timeline if provided)

Type:

DataFrame

survival_function_

The estimated survival function (with custom timeline if provided)

Type:

DataFrame

cumulative_density_

The estimated cumulative density function (with custom timeline if provided)

Type:

DataFrame

density_

The estimated density function (PDF) (with custom timeline if provided)

Type:

DataFrame

variance_matrix_

The variance matrix of the coefficients

Type:

DataFrame

median_survival_time_

The median time to event

Type:

float

lambda_

The fitted parameter in the model

Type:

float

rho_

The fitted parameter in the model

Type:

float

alpha_

The fitted parameter in the model

Type:

float

durations

The durations provided

Type:

array

event_observed

The event_observed variable provided

Type:

array

timeline

The time line to use for plotting and indexing

Type:

array

entry

The entry array provided, or None

Type:

array or None

percentile(p)

Return the unique time point, t, such that S(t) = p.

Parameters:

p (float)