ehrapy.tools.kmf¶
- ehrapy.tools.kmf(durations, event_observed=None, timeline=None, entry=None, label=None, alpha=None, ci_labels=None, weights=None, censoring=None)[source]¶
Fit the Kaplan-Meier estimate for the survival function.
The Kaplan–Meier estimator, also known as the product limit estimator, is a non-parametric statistic used to estimate the survival function from lifetime data. In medical research, it is often used to measure the fraction of patients living for a certain amount of time after treatment.
- Parameters:
durations (
Iterable
) – length n – duration (relative to subject’s birth) the subject was alive for.event_observed (
Iterable
|None
, default:None
) – True if the death was observed, False if the event was lost (right-censored). Defaults to all True if event_observed is equal to None.timeline (
Iterable
, default:None
) – return the best estimate at the values in timelines (positively increasing)entry (
Iterable
|None
, default:None
) – Relative time when a subject entered the study. This is useful for left-truncated (not left-censored) observations. If None, all members of the population entered study when they were “born”.label (
str
|None
, default:None
) – A string to name the column of the estimate.alpha (
float
|None
, default:None
) – The alpha value in the confidence intervals. Overrides the initializing alpha for this call to fit only.ci_labels (
tuple
[str
,str
], default:None
) – Add custom column names to the generated confidence intervals as a length-2 list: [<lower-bound name>, <upper-bound name>] (default: <label>_lower_<1-alpha/2>).weights (
Iterable
|None
, default:None
) – If providing a weighted dataset. For example, instead of providing every subject as a single element of durations and event_observed, one could weigh subject differently.censoring (
Literal
['right'
,'left'
], default:None
) – ‘right’ for fitting the model to a right-censored dataset. ‘left’ for fitting the model to a left-censored dataset (default: fit the model to a right-censored dataset).
- Return type:
KaplanMeierFitter
- Returns:
Fitted KaplanMeierFitter.
Examples
>>> import ehrapy as ep >>> adata = ep.dt.mimic_2(encoded=False) >>> # Flip 'censor_fl' because 0 = death and 1 = censored >>> adata[:, ["censor_flg"]].X = np.where(adata[:, ["censor_flg"]].X == 0, 1, 0) >>> kmf = ep.tl.kmf(adata[:, ["mort_day_censored"]].X, adata[:, ["censor_flg"]].X)