scipy.stats.Binomial.

icdf#

Binomial.icdf(p, /, *, method=None)[source]#

Inverse der kumulativen Verteilungsfunktion.

Für monotone kontinuierliche Verteilungen ist die Umkehrung der kumulativen Verteilungsfunktion ("inverse CDF"), bezeichnet als \(F^{-1}(p)\), das Argument \(x\), für das die kumulative Verteilungsfunktion \(F(x)\) den Wert \(p\) ergibt.

\[F^{-1}(p) = x \quad \text{s.d.} \quad F(x) = p\]

Wenn keine strikte "Umkehrung" der kumulativen Verteilungsfunktion existiert (z.B. bei diskreten Zufallsvariablen), wird die "inverse CDF" per Konvention als der kleinste Wert innerhalb des Trägers \(\chi\) definiert, für den \(F(x)\) mindestens \(p\) beträgt.

\[F^{-1}(p) = \min_\chi \quad \text{s.d.} \quad F(x) ≥ p\]

icdf unterstützt p für \(p \in [0, 1]\).

Parameter:
parray_like

Das Argument der inversen CDF.

method{None, ‘formula’, ‘complement’, ‘inversion’}

Die Strategie zur Auswertung der inversen CDF. Standardmäßig (None) wählt die Infrastruktur aus den folgenden Optionen, aufgeführt nach Rangfolge.

  • 'formula': verwendet eine Formel für die inverse CDF selbst

  • 'complement': Auswertung der inversen CCDF am Komplement von p

  • 'inversion': Numerische Lösung für das Argument, bei dem die CDF gleich p ist

Nicht alle method-Optionen sind für alle Verteilungen verfügbar. Wenn die ausgewählte method nicht verfügbar ist, wird ein NotImplementedError ausgelöst.

Rückgabe:
outarray

Die inverse CDF, ausgewertet am bereitgestellten Argument.

Siehe auch

cdf
ilogcdf

Hinweise

Angenommen, eine Wahrscheinlichkeitsverteilung hat die Träger \([l, r]\). Die inverse CDF gibt ihren Minimalwert \(l\) bei \(p = 0\) und ihren Maximalwert \(r\) bei \(p = 1\) zurück. Da die CDF den Wertebereich \([0, 1]\) hat, ist die inverse CDF nur auf dem Definitionsbereich \([0, 1]\) definiert; für \(p < 0\) und \(p > 1\) gibt icdfnan zurück.

Die inverse CDF ist auch bekannt als Quantilfunktion, Perzentilfunktion und Perzentil-Punkt-Funktion.

Referenzen

[1]

Quantilfunktion, Wikipedia, https://en.wikipedia.org/wiki/Quantile_function

Beispiele

Instanziieren Sie eine Verteilung mit den gewünschten Parametern

>>> import numpy as np
>>> from scipy import stats
>>> X = stats.Uniform(a=-0.5, b=0.5)

Wertet die inverse CDF am gewünschten Argument aus

>>> X.icdf(0.25)
-0.25
>>> np.allclose(X.cdf(X.icdf(0.25)), 0.25)
True

Diese Funktion gibt NaN zurück, wenn das Argument außerhalb der Domäne liegt.

>>> X.icdf([-0.1, 0, 1, 1.1])
array([ nan, -0.5,  0.5,  nan])