jmquintana79
7/19/2016 - 12:24 AM

Weibull distribution tools

Weibull distribution tools

"""
scipy manual: http://docs.scipy.org/doc/scipy-0.15.1/reference/generated/scipy.stats.exponweib.html
"""

from scipy.stats import exponweib

# calculate a ramdon sample with weibull distribution
sample = exponweib.rvs(a=a, c=c, scale=scale, loc=loc, size=250)
# fit a weibull distribution
params = exponweib.fit(sample, floc=0, fa=1)

"""
a = params[0]
c = params[1]
loc = params[2]
scale = params[3]

a * c * (1-exp(-x**c))**(a-1) * exp(-x**c)*x**(c-1)

a, c : shape parameters
loc : location parameter (default=0)
scale : scale parameter (default=1)
size : shape of random variates (default computed from input arguments )

a = es lo que llamamos k, es decir el parametro de forma 
c = es lo que llamamos 1/ lambda, donde lambda es el parametro de escala

https://en.wikipedia.org/wiki/Weibull_distribution#Parameter_estimation

"""