scipy.stats.betanbinom#

scipy.stats.betanbinom = <scipy.stats._discrete_distns.betanbinom_gen Objekt>[Quelle]#

Eine diskrete Beta-Negativ-Binomial-Zufallsvariable.

Als Instanz der rv_discrete-Klasse erbt betanbinom von ihr eine Sammlung allgemeiner Methoden (siehe unten für die vollständige Liste) und ergänzt diese um Details, die spezifisch für diese Verteilung sind.

Methoden

rvs(n, a, b, loc=0, size=1, random_state=None)

Zufallsvariaten.

pmf(k, n, a, b, loc=0)

Wahrscheinlichkeitsmassenfunktion.

logpmf(k, n, a, b, loc=0)

Logarithmus der Wahrscheinlichkeitsmassenfunktion.

cdf(k, n, a, b, loc=0)

Kumulative Verteilungsfunktion.

logcdf(k, n, a, b, loc=0)

Logarithmus der kumulativen Verteilungsfunktion.

sf(k, n, a, b, loc=0)

Überlebensfunktion (auch definiert als 1 - cdf, aber sf ist manchmal genauer).

logsf(k, n, a, b, loc=0)

Logarithmus der Überlebensfunktion.

ppf(q, n, a, b, loc=0)

Perzentilpunktfunktion (Umkehrung von cdf — Perzentile).

isf(q, n, a, b, loc=0)

Umgekehrte Überlebensfunktion (Umkehrung von sf).

stats(n, a, b, loc=0, moments=’mv’)

Mittelwert(‚m‘), Varianz(‚v‘), Schiefe(‚s‘) und/oder Kurtosis(‚k‘).

entropy(n, a, b, loc=0)

(Differential-)Entropie der RV.

expect(func, args=(n, a, b), loc=0, lb=None, ub=None, conditional=False)

Erwartungswert einer Funktion (einer Variablen) bezüglich der Verteilung.

median(n, a, b, loc=0)

Median der Verteilung.

mean(n, a, b, loc=0)

Mittelwert der Verteilung.

var(n, a, b, loc=0)

Varianz der Verteilung.

std(n, a, b, loc=0)

Standardabweichung der Verteilung.

interval(confidence, n, a, b, loc=0)

Konfidenzintervall mit gleichen Flächen um den Median.

Siehe auch

betabinom

Beta-Binomial-Verteilung

Hinweise

Die Beta-Negativ-Binomial-Verteilung ist eine Negativ-Binomial-Verteilung mit einer Erfolgswahrscheinlichkeit p, die einer Beta-Verteilung folgt.

Die Wahrscheinlichkeitsmassenfunktion für betanbinom ist

\[f(k) = \binom{n + k - 1}{k} \frac{B(a + n, b + k)}{B(a, b)}\]

für \(k \ge 0\), \(n \geq 0\), \(a > 0\), \(b > 0\), wobei \(B(a, b)\) die Betafunktion ist.

betanbinom verwendet \(n\), \(a\) und \(b\) als Formparameter.

Die obige Wahrscheinlichkeitsmassenfunktion ist in der „standardisierten“ Form definiert. Zum Verschieben der Verteilung verwenden Sie den Parameter loc. Speziell ist betanbinom.pmf(k, n, a, b, loc) identisch äquivalent zu betanbinom.pmf(k - loc, n, a, b).

Referenzen

Hinzugefügt in Version 1.12.0.

Beispiele

>>> import numpy as np
>>> from scipy.stats import betanbinom
>>> import matplotlib.pyplot as plt
>>> fig, ax = plt.subplots(1, 1)

Ermitteln Sie den Träger (Support)

>>> n, a, b = 5, 9.3, 1
>>> lb, ub = betanbinom.support(n, a, b)

Berechnen Sie die ersten vier Momente

>>> mean, var, skew, kurt = betanbinom.stats(n, a, b, moments='mvsk')

Anzeigen der Wahrscheinlichkeitsmassenfunktion (pmf)

>>> x = np.arange(betanbinom.ppf(0.01, n, a, b),
...               betanbinom.ppf(0.99, n, a, b))
>>> ax.plot(x, betanbinom.pmf(x, n, a, b), 'bo', ms=8, label='betanbinom pmf')
>>> ax.vlines(x, 0, betanbinom.pmf(x, n, a, b), colors='b', lw=5, alpha=0.5)

Alternativ kann das Verteilungsobjekt (als Funktion) aufgerufen werden, um die Form und den Ort festzulegen. Dies gibt ein „eingefrorenes“ RV-Objekt zurück, das die angegebenen Parameter beibehält.

Die Verteilung einfrieren und die eingefrorene pmf anzeigen

>>> rv = betanbinom(n, a, b)
>>> ax.vlines(x, 0, rv.pmf(x), colors='k', linestyles='-', lw=1,
...         label='frozen pmf')
>>> ax.legend(loc='best', frameon=False)
>>> plt.show()
../../_images/scipy-stats-betanbinom-1_00_00.png

Überprüfen Sie die Genauigkeit von cdf und ppf

>>> prob = betanbinom.cdf(x, n, a, b)
>>> np.allclose(x, betanbinom.ppf(prob, n, a, b))
True

Generieren Sie Zufallszahlen

>>> r = betanbinom.rvs(n, a, b, size=1000)