R: Normal Inverse Gaussian Distribution

nig {fBasics} | R Documentation

## Normal Inverse Gaussian Distribution

### Description

Density, distribution function, quantile function and random generation for the normal inverse Gaussian distribution.

### Usage

    dnig(x, alpha = 1, beta = 0, delta = 1, mu = 0, log = FALSE)
    pnig(q, alpha = 1, beta = 0, delta = 1, mu = 0)
    qnig(p, alpha = 1, beta = 0, delta = 1, mu = 0)
    rnig(n, alpha = 1, beta = 0, delta = 1, mu = 0)

### Arguments

`alpha, beta, delta, mu` | shape parameter `alpha`; skewness parameter `beta`, `abs(beta)` is in the range (0, alpha); scale parameter `delta`, `delta` must be zero or positive; location parameter `mu`, by default 0. These are the parameters in the first parameterization.
`log` | a logical flag by default `FALSE`. Should labels and a main title drawn to the plot?
`n` | number of observations.
`p` | a numeric vector of probabilities.
`x, q` | a numeric vector of quantiles.

### Details

The random deviates are calculated with the method described by Raible (2000).

### Value

All values for the `*nig` functions are numeric vectors: `d*` returns the density, `p*` returns the distribution function, `q*` returns the quantile function, and `r*` generates random deviates.

All values have attributes named `"param"` listing the values of the distributional parameters.

### Author(s)

David Scott for code implemented from R's contributed package `HyperbolicDist`.

### References

Atkinson, A.C. (1982); The simulation of generalized inverse Gaussian and hyperbolic random variables, SIAM J. Sci. Stat. Comput. 3, 502–515.

Barndorff-Nielsen O. (1977); Exponentially decreasing distributions for the logarithm of particle size, Proc. Roy. Soc. Lond., A353, 401–419.

Barndorff-Nielsen O., Blaesild, P. (1983); Hyperbolic distributions. In Encyclopedia of Statistical Sciences, Eds., Johnson N.L., Kotz S. and Read C.B., Vol. 3, pp. 700–707. New York: Wiley.

Raible S. (2000); Levy Processes in Finance: Theory, Numerics and Empirical Facts, PhD Thesis, University of Freiburg, Germany, 161 pages.

### Examples

    ## nig -
       set.seed(1953)
       r = rnig(5000, alpha = 1, beta = 0.3, delta = 1)
       plot(r, type = "l", col = "steelblue",
         main = "nig: alpha=1 beta=0.3 delta=1")

    ## nig -
       # Plot empirical density and compare with true density:
       hist(r, n = 25, probability = TRUE, border = "white", col = "steelblue")
       x = seq(-5, 5, 0.25)
       lines(x, dnig(x, alpha = 1, beta = 0.3, delta = 1))

    ## nig -
       # Plot df and compare with true df:
       plot(sort(r), (1:5000/5000), main = "Probability", col = "steelblue")
       lines(x, pnig(x, alpha = 1, beta = 0.3, delta = 1))

    ## nig -
       # Compute Quantiles:
       qnig(pnig(seq(-5, 5, 1), alpha = 1, beta = 0.3, delta = 1),
         alpha = 1, beta = 0.3, delta = 1)

[Package fBasics version 3042.89 Index]