scipy.stats.expon() | Python
scipy.stats.expon() ist eine exponentielle kontinuierliche Zufallsvariable, die mit einem Standardformat und einigen Formparametern definiert wird, um ihre Spezifikation zu vervollständigen.
Parameter:
q: untere und obere Schwanzwahrscheinlichkeit
x: Quantile
loc: [optional] Standortparameter. Standard = 0
Skala: [optional] Skalierungsparameter. Standard = 1
Größe: [Tupel von Ints, optional] Form oder zufällige Variablen.
Momente: [optional] bestehend aus Buchstaben ['mvsk']; 'm' = Mittelwert, 'v' = Varianz, 's' = Fisher's Skew und 'k' = Fisher's Kurtosis. (Standard = 'mv').Ergebnisse: exponentielle kontinuierliche Zufallsvariable
Code 1: Erstellen einer exponentiellen kontinuierlichen Zufallsvariablen
from
scipy.stats
import
expon
numargs
=
expon.numargs
[ ]
=
[
0.6
, ]
*
numargs
rv
=
expon( )
(
"RV : \n"
, rv)
Ausgabe :
Wohnmobil: <scipy.stats._distn_infrastructure.rv_frozen Objekt bei 0x0000018D56531CC0>
Code 2: exponentielle Zufallsvariablen und Wahrscheinlichkeitsverteilung.
import
numpy as np
quantile
=
np.arange (
0.01
,
1
,
0.1
)
R
=
expon.rvs(scale
=
2
, size
=
10
)
(
"Random Variates : \n"
, R)
R
=
expon.pdf(quantile, loc
=
0
, scale
=
1
)
(
"\nProbability Distribution : \n"
, R)
Ausgabe :
Zufällige Variablen: [2.50259466e-04 4.32311862e + 00 8.22833503e-01 1.63374263e + 00 4.46784023e + 00 3.56781485e + 00 3.95381396e + 00 1.17623772e + 00 3.21834266e-02 4.14778445e + 00] Wahrscheinlichkeitsverteilung : [0.99004983 0.89583414 0.81058425 0.73344696 0.66365025 0.60049558 0,54335087 0,4916442 0,44485807 0,40252422]
Code 3: Grafische Darstellung.
import
numpy as np
import
matplotlib.pyplot as plt
distribution
=
np.linspace(
0
, np.minimum(rv.dist.b,
5
))
(
"Distribution : \n"
, distribution)
plot
=
plt.plot(distribution, rv.pdf(distribution))
Ausgabe :
Verbreitung: [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: Unterschiedliche Positionsargumente
import
matplotlib.pyplot as plt
import
numpy as np
x
=
np.linspace(
0
,
5
,
100
)
y1
=
expon.pdf(x,
2
,
6
)
y2
=
expon.pdf(x,
1
,
4
)
plt.plot(x, y1,
"*"
, x, y2,
"r--"
)
Ausgabe :