ilogcdf#
- Binomial.ilogcdf(logp, /, *, method=None)[Quelle]#
Inverse des Logarithmus der kumulativen Verteilungsfunktion.
Die Umkehrfunktion des Logarithmus der kumulativen Verteilungsfunktion („inverse log-CDF“) ist das Argument \(x\), für das der Logarithmus der kumulativen Verteilungsfunktion \(\log(F(x))\) den Wert \(\log(p)\) ergibt.
Mathematisch ist dies äquivalent zu \(F^{-1}(\exp(y))\), wobei \(y = \log(p)\) ist. Dies kann jedoch numerisch vorteilhafter sein als die naive Implementierung (Berechnung von \(p = \exp(y)\), dann \(F^{-1}(p)\)).
ilogcdfakzeptiert logp für \(\log(p) ≤ 0\).- Parameter:
- logparray_like
Das Argument der inversen log-CDF.
- method{None, ‘formula’, ‘complement’, ‘inversion’}
Die verwendete Strategie zur Auswertung der inversen log-CDF. Standardmäßig (
None) wählt die Infrastruktur aus den folgenden Optionen, die in der Reihenfolge ihrer Priorität aufgeführt sind.'formula': Verwendung einer Formel für die inverse log-CDF selbst.'complement': Auswertung der inversen log-CCDF am logarithmischen Komplement von logp (siehe Hinweise).'inversion': Numerische Lösung für das Argument, bei dem die log-CDF gleich logp ist.
Nicht alle method-Optionen sind für alle Verteilungen verfügbar. Wenn die ausgewählte method nicht verfügbar ist, wird ein
NotImplementedErrorausgelöst.
- Rückgabe:
- outarray
Die inverse log-CDF, ausgewertet am bereitgestellten Argument.
Hinweise
Angenommen, eine Wahrscheinlichkeitsverteilung hat einen Träger \([l, r]\). Die inverse Log-CDF gibt ihren Minimalwert von \(l\) bei \(\log(p) = \log(0) = -\infty\) und ihren Maximalwert von \(r\) bei \(\log(p) = \log(1) = 0\) zurück. Da die Log-CDF den Wertebereich \([-\infty, 0]\) hat, ist die inverse Log-CDF nur auf den negativen reellen Zahlen definiert; für \(\log(p) > 0\) gibt
ilogcdfnanzurück.Gelegentlich ist es notwendig, das Argument der CDF zu finden, für das die resultierende Wahrscheinlichkeit sehr nahe bei
0oder1liegt – zu nahe, um sie mit Gleitkommaarithmetik genau darzustellen. In vielen Fällen kann jedoch der *Logarithmus* dieser resultierenden Wahrscheinlichkeit in Gleitkommaarithmetik dargestellt werden. In diesem Fall kann diese Funktion verwendet werden, um das Argument der CDF zu finden, für das der *Logarithmus* der resultierenden Wahrscheinlichkeit \(y = \log(p)\) ist.Das "logarithmische Komplement" einer Zahl \(z\) ist mathematisch äquivalent zu \(\log(1-\exp(z))\), wird aber so berechnet, dass Genauigkeitsverluste vermieden werden, wenn \(\exp(z)\) fast \(0\) oder \(1\) ist.
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)
Auswerten der inversen log-CDF am gewünschten Argument.
>>> X.ilogcdf(-0.25) 0.2788007830714034 >>> np.allclose(X.ilogcdf(-0.25), X.icdf(np.exp(-0.25))) True