iccdf#
- Normal.iccdf(p, /, *, methode=None)[source]#
Inverse der komplementären kumulativen Verteilungsfunktion.
Die inverse komplementäre Verteilungsfunktion (“inverse CCDF”), bezeichnet als \(G^{-1}(p)\), ist das Argument \(x\), für das die komplementäre Verteilungsfunktion \(G(x)\) den Wert \(p\) ergibt.
\[G^{-1}(p) = x \quad \text{s.t.} \quad G(x) = p\]Wenn keine strenge „Inverse“ der komplementären Verteilungsfunktion existiert (z. B. bei diskreten Zufallsvariablen), wird die „inverse CCDF“ per Konvention als der kleinste Wert innerhalb des Trägers \(\chi\) definiert, für den \(G(x)\) nicht größer als \(p\) ist.
\[G^{-1}(p) = \min_\chi \quad \text{s.t.} \quad G(x) ≤ p\]iccdfakzeptiert p für \(p \in [0, 1]\).- Parameter:
- parray_like
Das Argument der inversen CCDF.
- method{None, ‘formula’, ‘complement’, ‘inversion’}
Die Strategie, die zur Auswertung der inversen CCDF verwendet wird. Standardmäßig (
None) wählt die Infrastruktur aus den folgenden Optionen, in der Reihenfolge der Priorität aufgeführt.'formula': Verwenden Sie eine Formel für die inverse CCDF selbst.'complement': Werten Sie die inverse CDF am Komplement von p aus.'inversion': Lösen Sie numerisch nach dem Argument auf, bei dem die CCDF 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
NotImplementedErrorausgelöst.
- Rückgabe:
- outarray
Die inverse CCDF, ausgewertet am bereitgestellten Argument.
Hinweise
Angenommen, eine Wahrscheinlichkeitsverteilung hat den Träger \([l, r]\). Die inverse CCDF gibt ihren Minimalwert \(l\) bei \(p = 1\) und ihren Maximalwert \(r\) bei \(p = 0\) zurück. Da die CCDF den Wertebereich \([0, 1]\) hat, ist die inverse CCDF nur auf der Domäne \([0, 1]\) definiert; für \(p < 0\) und \(p > 1\) gibt
iccdfnanzurück.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)
Werten Sie die inverse CCDF am gewünschten Argument aus.
>>> X.iccdf(0.25) 0.25 >>> np.allclose(X.iccdf(0.25), X.icdf(1-0.25)) True
Diese Funktion gibt NaN zurück, wenn das Argument außerhalb der Domäne liegt.
>>> X.iccdf([-0.1, 0, 1, 1.1]) array([ nan, 0.5, -0.5, nan])