Reliability Engineering Toolkit for Python

0.9.0 · active · verified Sun Apr 12

reliability is a Python library for reliability engineering and survival analysis, significantly extending `scipy.stats` functionality. It provides specialist tools for distribution fitting (including censored data and mixture models), survival analysis (Kaplan-Meier, Nelson-Aalen), reliability testing, and physics of failure. The library is actively maintained, with regular updates and improvements.

Warnings

Install

Imports

Quickstart

This quickstart demonstrates how to create a Weibull distribution, draw random samples, fit a 2-parameter Weibull distribution to the data, and then plot both the probability plot and the survival function using the library's object-oriented approach.

import matplotlib.pyplot as plt
from reliability.Distributions import Weibull_Distribution
from reliability.Fitters import Fit_Weibull_2P

# Create a Weibull Distribution object
dist = Weibull_Distribution(alpha=30, beta=2)

# Draw 20 random samples
data = dist.random_samples(20, seed=42)

plt.figure(figsize=(10, 5))
plt.subplot(121)
# Fit a 2-parameter Weibull Distribution to the samples
fit = Fit_Weibull_2P(failures=data, show_probability_plot=True)
plt.title('Weibull Probability Plot')

plt.subplot(122)
# Plot the survival function from the fitted distribution
fit.distribution.SF()
plt.title('Survival Function')

plt.tight_layout()
plt.show()

view raw JSON →