Primer ejemplo de confiabilidad en Python

 

Un ejemplo rápido

En este ejemplo, crearemos una distribución Weibull y de esa distribución extraeremos 20 muestras aleatorias. Usando esas muestras ajustaremos una distribución Weibull de 2 parámetros. El proceso de ajuste genera la gráfica de probabilidad. Luego podemos acceder al objeto de distribución para trazar la función de supervivencia. 

En google Colab:

!pip install reliability

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

dist = Weibull_Distribution(alpha=30, beta=2)  # creates the distribution object
data = dist.random_samples(20, seed=42)  # draws 20 samples from the distribution. Seeded for repeatability
plt.subplot(121)
fit = Fit_Weibull_2P(failures=data)  # fits a Weibull distribution to the data and generates the probability plot
plt.subplot(122)
fit.distribution.SF(label='fitted distribution')  # uses the distribution object from Fit_Weibull_2P and plots the survival function
dist.SF(label='original distribution', linestyle='--') # plots the survival function of the original distribution
plot_points(failures=data, func='SF')  # overlays the original data on the survival function
plt.legend()
plt.show()
Results from Fit_Weibull_2P (95% CI):
Analysis method: Maximum Likelihood Estimation (MLE)
Optimizer: TNC
Failures / Right censored: 20/0 (0% right censored) 

Parameter  Point Estimate  Standard Error  Lower CI  Upper CI
    Alpha         28.1696         3.57032   21.9733   36.1131
     Beta         1.86308         0.32449   1.32428   2.62111 

Goodness of fit    Value
 Log-likelihood -79.5482
           AICc  163.802
            BIC  165.088
             AD  0.83728 
  

 

Una característica clave de la confiabilidad es que las distribuciones de probabilidad se crean como objetos, y estos objetos tienen muchas propiedades (como la media) que se establecen una vez que se definen los parámetros de la distribución. El uso del operador de punto nos permite acceder a estas propiedades, así como a una gran cantidad de métodos (como extraer muestras aleatorias como se ve en el ejemplo anterior).

Cada distribución se puede visualizar en cinco gráficos diferentes. Estas son la función de densidad de probabilidad (PDF), la función de distribución acumulativa (CDF), la función de supervivencia (SF) [también conocida como función de confiabilidad], la función de riesgo (HF) y la función de riesgo acumulativo (CHF). Acceder a la trama de cualquiera de estos es tan fácil como cualquiera de los otros métodos. P.ej. dist.SF()en el ejemplo anterior es lo que traza la función de supervivencia utilizando el objeto de distribución que fue devuelto por el instalador.

Comentarios

Entradas más populares de este blog

PySDR: una guía para SDR y DSP usando Python by Dr. Marc Lichtman. Introducciòn.

Colecciones de datos/set