Open In App

Python – Weibull Maximum Distribution in Statistics

Improve
Improve
Like Article
Like
Save
Share
Report

scipy.stats.weibull_max() is a Weibull maximum continuous random variable. It is inherited from the of generic methods as an instance of the rv_continuous class. It completes the methods with details specific for this particular distribution.

Parameters :

q : lower and upper tail probability
x : quantiles
loc : [optional]location parameter. Default = 0
scale : [optional]scale parameter. Default = 1
size : [tuple of ints, optional] shape or random variates.
moments : [optional] composed of letters [‘mvsk’]; ‘m’ = mean, ‘v’ = variance, ‘s’ = Fisher’s skew and ‘k’ = Fisher’s kurtosis. (default = ‘mv’).

Results : Weibull maximum continuous random variable

Code #1 : Creating Weibull maximum continuous random variable




# importing library
  
from scipy.stats import weibull_max 
    
numargs = weibull_max .numargs 
a, b = 0.2, 0.8
rv = weibull_max (a, b) 
    
print ("RV : \n", rv)  


Output :

RV : 
 scipy.stats._distn_infrastructure.rv_frozen object at 0x000002A9DA07FDC8

Code #2 : Weibull maximum continuous variates and probability distribution




import numpy as np 
quantile = np.arange (0.01, 1, 0.1
  
# Random Variates 
R = weibull_max .rvs(a, b, size = 10
print ("Random Variates : \n", R) 
  
# PDF 
x = np.linspace(weibull_max.ppf(0.01, a, b),
                weibull_max.ppf(0.99, a, b), 10)
R = weibull_max.pdf(x, 1, 3)
print ("\nProbability Distribution : \n", R) 


Output :

Random Variates : 
 [ 7.99998841e-01  7.96362853e-01 -1.36808367e+00 -5.04876338e-01
 -8.07612996e+03  2.47694796e-01  7.80624490e-01  7.99996977e-01
  7.95962734e-01  6.94775447e-01]

Probability Distribution : 
 [0.00000000e+000 0.00000000e+000 0.00000000e+000 0.00000000e+000
 0.00000000e+000 0.00000000e+000 1.59673931e-301 1.41364401e-201
 1.25154393e-101 1.10803158e-001]

Code #3 : Graphical Representation.




import numpy as np 
import matplotlib.pyplot as plt 
     
distribution = np.linspace(0, np.minimum(rv.dist.b, 2)) 
print("Distribution : \n", distribution) 


Output :

Distribution : 
 [0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.
 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.
 0. 0.]
  

Code #4 : Varying Positional Arguments




import matplotlib.pyplot as plt 
import numpy as np 
  
x = np.linspace(0, 5, 100
     
# Varying positional arguments 
y1 = weibull_max.pdf(x, a, b) 
y2 = weibull_max.pdf(x, a, b) 
plt.plot(x, y1, "*", x, y2, "r--"


Output :



Last Updated : 10 Jan, 2020
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads