Normal Inverse Gaussian Distribution#

Die Wahrscheinlichkeitsdichtefunktion ist gegeben durch

\begin{eqnarray*} f(x; a, b) = \frac{a \exp\left(\sqrt{a^2 - b^2} + b x \right)}{\pi \sqrt{1 + x^2}} \, K_1\left(a * \sqrt{1 + x^2}\right), \end{eqnarray*}

wobei \(x\) eine reelle Zahl ist, der Parameter \(a\) die Schwere der Ränder (tail heaviness) angibt und \(b\) der Parameter für die Asymmetrie ist. Es gelten \(a > 0\) und \(|b| \leq a\). \(K_1\) ist die modifizierte Bessel-Funktion zweiter Art (scipy.special.k1).

Eine normal-inversegaußsche Zufallsvariable mit den Parametern \(a\) und \(b\) kann ausgedrückt werden als \(X = b V + \sqrt(V) X\), wobei \(X\) eine norm(0,1)-verteilte Variable und \(V\) eine invgauss(mu=1/sqrt(a**2 - b**2))-verteilte Variable ist. Daher ist die Normal-Inverse-Gaußsche Verteilung ein Spezialfall von Normal-Varianz-Mittelwert-Mischungen.

Eine weitere gebräuchliche Parametrisierung der Verteilung wird durch den folgenden Ausdruck der Wahrscheinlichkeitsdichtefunktion gegeben:

\begin{eqnarray*} g(x, \alpha, \beta, \delta, \mu) = \frac{\alpha\delta K_1 \left(\alpha\sqrt{\delta^2 + (x - \mu)^2}\right)}{\pi \sqrt{\delta^2 + (x - \mu)^2}} \, e^{\delta \sqrt{\alpha^2 - \beta^2} + \beta (x - \mu)} \end{eqnarray*}

In SciPy entspricht dies \(a = \alpha \delta, b = \beta \delta, \text{loc} = \mu, \text{scale}=\delta\).

Implementierung: scipy.stats.norminvgauss