scipy stats.exponweib () | python



scipy.stats.exponweib () — an exponential continuous Weibull random variable that is defined by a standard format and some form parameters to complete its specification.

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: exponential Weibull continuous random variable

Code # 1: Create exponential continuous random variable Weibull random variable

from scipy.stats import exponweib 

  

numargs = exponweib .numargs

[a, b] = [ 0.6 ,] * numargs

rv = exponweib (a, b)

  

print ( " RV : " , rv) 

Output:

 RV: & lt; scipy.stats._distn_infrastructure.rv_frozen object at 0x0000018D5660E1D0 & gt; 

Code # 2: Weibull Exponential Random Variables and Probability Distribution.

import numpy as np

quantile = np.arange ( 0.01 , 1 , 0.1 )

 
# Random Variants

R = exponweib .rvs (a, b, scale = 2 , size = 10 )

print ( "Random Variates:" , R)

 
# PDF

R = exponweib .pdf (a, b, quantile, loc = 0 , scale = 1 )

print ( "Probability Distribution:" , R)

Output:

 Random Variates: [8.17460511 e + 00 1.33286202e + 00 1.77493153e + 01 1.83861272e-01 5.32255458e-01 1.34520149e + 00 1.91022498e-02 3.08216056e-03 6.46223522e-03 1.75786657e-01] Probability Distribution: [0.00442484 0.0491 9014 0.09470438 0.14070318 0.1869346 0.2331608 0.27915913 0.32472306 0.36966267 0.41380492] 

Code # 3: Graphic representation.

import numpy as np

import matplotlib.pyplot as plt

 

distribution = np.linspace ( 0 , np.minimum (rv.dist.b, 5 ))

print ( " Distribution: " , distribution)

 

plot = plt.plot (distribution, rv.pdf (distribution))

Output:

 Distribution: [0. 0.10204082 0.20408163 0.30612245 0.40816327 0.51020408 0.6122449 0.71428571 0.81632653 0.91836735 1.02040816 1.12244898 1.2244898 1.32653061 1.42857143 1.53061224 1.63265306 1.73469388 1.83673469 1.93877551 2.04081633 2.14285714 2.24489796 2.34693878 2.44897959 2.55102041 2.65306122 2.75510204 2.85714286 2.95918367 3.06122449 3.16326531 3.26530612 3.36734694 3.46938776 3.57142857 3.67346939 3.7755102 3.87755102 3.97959184 4.08163265 4.18367347 4.28571429 4.3877551 4.48979592 4.59183673 4.69387755 4.79591837 4.89795918 5. ] 

Code # 4: Various Positional Arguments

import matplotlib. pyplot as plt

import < code class = "plain"> numpy as np

 

x = np.linspace ( 0 , 5 , 100 )

 
# Various positional arguments

y1 = exponweib .pdf (x, 2 , 6 )

y2 = exponweib .pdf (x , 1 , 4 )

plt.plot (x, y1, " * " , x, y2, " r-- " )

Output: