Normal Inverse Gaussian Distribution#
The probability density function is given by:
where x is a real number, the parameter a is the tail heaviness and b is the asymmetry parameter satisfying a > 0 and |b| \leq a. K_1 is the modified Bessel function of second kind (scipy.special.k1
).
A normal inverse Gaussian random variable with parameters a and b can be expressed as X = b V + \sqrt(V) X where X is norm(0,1)
and V is invgauss(mu=1/sqrt(a**2 - b**2))
. Hence, the normal inverse Gaussian distribution is a special case of normal variance-mean mixtures.
Another common parametrization of the distribution is given by the following expression of the pdf:
In SciPy, this corresponds to a = \alpha \delta, b = \beta \delta, \text{loc} = \mu, \text{scale}=\delta.
Implementation: scipy.stats.norminvgauss