Skip to main content

A python package for survival analysis

Project description

SurPyval - Survival Analysis in Python

Yet another Python survival analysis tool. This is another pure python survival analysis tool so why was it needed? The intent of this package was to closely mimic the scipy API as close as possible, other survival analysis packages don't completely mimic that API. Further, there was a gap in the other tools, specifically, arbitrary combinations of observed, censored, and truncated data. The current capability is as follows:

Method Para/Non-Para Observed Censored Truncated
MLE Parametric Yes Yes Yes
MPP Parametric Yes Yes Limited
MSE Parametric Yes Yes Limited
MOM Parametric Yes No No
MPS Parametric Yes Yes No
Kaplan-Meier Non-Parametric Yes Right only Left only
Nelson-Aalen Non-Parametric Yes Right only Left only
Fleming-Harrington Non-Parametric Yes Right only Left only
Turnbull Non-Parametric Yes Yes Yes

SurPyval also offers many different distributions for users, and because of the flexible implementation adding new distributions is easy. The available distributions are:

Distribution
Weibull
Normal
LogNormal
Gamma
Beta
Uniform
Exponential
Exponentiated Weibull
Gumbel
Logistic
LogLogistic

This project spawned from a Reliaility Engineering project, as such there is a focus on visualising distribution fits with probability plots. This is combined with extremely flexible non-parametric fitting estimates. So each parametric.

Install and Quick Intro

SurPyval can be installed via pip using the PyPI repository

pip install surpyval

If you're familiar with survival analysis, and Weibull plotting, the following is a quick start.

from surpyval import Weibull
from surpyval.datasets import BoforsSteel

# Fetch some data that comes with SurPyval
data = BoforsSteel.df

x = data['x']
n = data['n']

model = Weibull.fit(x=x, n=n, offset=True)
model.plot();

Weibull Data and Distribution

Documentation

SurPyval is well documented, and improving, at the main documentation.

Contact

Email derryn if you want any features or to see how SurPyval can be used for you.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

surpyval-0.4.0.tar.gz (35.8 kB view hashes)

Uploaded Source

Built Distribution

surpyval-0.4.0-py3-none-any.whl (76.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page