predictr
predict + reliability, in other words: A tool to predict the reliability.
predictr is a Python package for Weibull-based life data analysis (reliability engineering). It covers parameter estimation, bias-correction, confidence bounds, and publication-ready Weibull plots in a single, consistent API.
Installation
pip install predictr
Requires Python >= 3.6.
Quick start
from predictr import Analysis
failures = [0.4508831, 0.68564703, 0.76826143, 0.88231395, 1.48287253, 1.62876357]
weibull = Analysis(df=failures, bounds='fb', show=True)
weibull.mle()
print(weibull.beta, weibull.eta) # shape and scale estimates
This fits a two-parameter Weibull distribution via Maximum Likelihood Estimation, adds Fisher confidence bounds, and renders the probability plot below.

See it in action
A few of predictr's capabilities, from bias-corrected estimates to comparing entire distributions.
| Bias-corrected estimates | Confidence region, multiple levels |
|---|---|
![]() |
![]() |
| Ranked by AIC | Distributions compared |
|---|---|
![]() |
![]() |
| Regression: survival per covariate profile | Goodness of fit with verdict |
|---|---|
![]() |
![]() |
Main features
Parameter estimation
- Uncensored and type I / type II right-censored two-parameter Weibull distribution
- Maximum Likelihood Estimation (MLE) and Median Rank Regression (MRR)
- Bx-life calculator
- Normal, LogNormal and Exponential distributions, alongside Weibull
- Non-parametric Kaplan–Meier kaplan_meier() and Nelson–Aalen nelson_aalen() from the failure / suspension lists (no DataFrame), with pointwise bands and step plots
Lifetime regression (covariates)
- Weibull accelerated failure time (AFT) and Cox proportional hazards (Cox PH) models
- Uncensored and right-censored data, Efron/Breslow tie handling, Wald / profile-likelihood / bootstrap (parametric and non-parametric) bounds
- summary(), coefficient forest plot, survival-curve prediction per covariate profile (with pointwise and simultaneous confidence bands)
- Goodness of fit: goodness_of_fit() with a good / marginal / poor verdict (concordance, Cox–Snell slope, proportional-hazards test), Cox–Snell / martingale / deviance residuals, plot_gof(), check_ph()
- Stratified Kaplan–Meier / Nelson–Aalen (plot_km(by=...) / plot_na(by=...)) as a model-free reference
- Accelerated life testing: named aging laws (stress_model= — Arrhenius, inverse power, Eyring, Coffin–Manson), physical parameters (Ea, n) with CIs, acceleration_factor(), raw-unit predictions, plot_stress_life(), check_shape()
- Monte-Carlo power_analysis() and sample_size()
Bias-correction - C4 method (reduced bias adjustment) - Hirose and Ross method - Parametric and non-parametric bootstrap correction (mean, median, trimmed mean)
Confidence bounds - Fisher bounds - Likelihood Ratio bounds (Weibull, Normal, LogNormal) - Beta-Binomial bounds - Monte Carlo Pivotal bounds - Parametric and non-parametric bootstrap bounds - Exact chi-square bounds (Exponential)
Plots - Probability plots with all relevant statistics in the legend - Multiple fits overlaid in one figure, for design comparisons - Contour plots for the joint confidence region of shape and scale, with support for multiple confidence levels per dataset - Distribution comparison: fit every supported distribution to one dataset, ranked by AIC or Anderson-Darling, plus a combined PDF plot
See the class documentation for the full method and parameter reference, including censored-data and bias-correction examples.
Documentation and links
Citing predictr
If you use predictr in academic work, please cite it via its Zenodo DOI. See docs/citation.md for details.
License
MIT — see LICENSE.txt.
Contacte me
If you have any questions and / or suggestions, don't hesitate to contact me.





