snorm {fGarch} R Documentation

## Skew Normal Distribution and Parameter Estimation

### Description

Functions to compute density, distribution function, quantile function and to generate random variates for the skew normal distribution. In addition maximum likelihood estimators are available to fit the parameters of the distribution.

The functions are:

 `[dpqr]snorm` Skew Normal Distribution, `normFit` MLE parameter fit for Normal distribution, `snormFit` MLE parameter fit for skew Normal distribution, `snormSlider` Displays interactively skew Normal distribution.

### Usage

```dsnorm(x, mean = 0, sd = 1, xi = 1.5)
psnorm(q, mean = 0, sd = 1, xi = 1.5)
qsnorm(p, mean = 0, sd = 1, xi = 1.5)
rsnorm(n, mean = 0, sd = 1, xi = 1.5)

normFit(x, ...)
snormFit(x, ...)

snormSlider(type = c("dist", "rand"))
```

### Arguments

 `mean, sd, xi` location parameter `mean`, scale parameter `sd`, skewness parameter `xi`. `n` the number of observations. `p` a numeric vector of probabilities. `type` a character string denoting which interactive plot should be displayed. Either a distribution plot `type="dist"`, the default value, or a random variates plot, `type="rand"`. `x, q` a numeric vector of quantiles. `...` parameters parsed to the optimization function `nlm`.

### Details

Symmetric Normal Distibution:

The functions for the normal distribution are part of R's base package. The functions for the symmetric Student-t distribution are rescaled in such a way that they have unit variance in contrast to the Student-t family `dt`, `pt`, `qt` and `rt` which are part of R's base package. The generalized error distribution functions are defined as described by Nelson (1991).

Skew Normal Distribution:

The skew normal distribution functions are defined as described by Fernandez and Steel (2000). cr

Parameter Estimation:

The function `nlm` is used to minimize the "negative" maximum log-likelihood function. `nlm` carries out a minimization using a Newton-type algorithm.

### Value

`d*` returns the density, `p*` returns the distribution function, `q*` returns the quantile function, and `r*` generates random deviates,
all values are numeric vectors.

`[s]normFit` returns a list with the following components:

 `par` The best set of parameters found. `objective` The value of objective corresponding to `par`. `convergence` An integer code. 0 indicates successful convergence. `message` A character string giving any additional information returned by the optimizer, or NULL. For details, see PORT documentation. `iterations` Number of iterations performed. `evaluations` Number of objective function and gradient function evaluations.

### Author(s)

Diethelm Wuertz for the Rmetrics R-port.

### References

Fernandez C., Steel M.F.J. (2000); On Bayesian Modelling of Fat Tails and Skewness, Preprint, 31 pages.

### Examples

```## snorm -

# Ranbdom Numbers:
par(mfrow = c(2, 2))
set.seed(1953)
r = rsnorm(n = 1000)
plot(r, type = "l", main = "snorm", col = "steelblue")

# Plot empirical density and compare with true density:
hist(r, n = 25, probability = TRUE, border = "white", col = "steelblue")
box()
x = seq(min(r), max(r), length = 201)
lines(x, dsnorm(x), lwd = 2)

# Plot df and compare with true df:
plot(sort(r), (1:1000/1000), main = "Probability", col = "steelblue",
ylab = "Probability")
lines(x, psnorm(x), lwd = 2)

# Compute quantiles:
round(qsnorm(psnorm(q = seq(-1, 5, by = 1))), digits = 6)

## snormFit -
snormFit(r)

## Not run:
## snormSlider -
if (require(tcltk)) {
snormSlider("dist")
snormSlider("rand")
}

## End(Not run)
```

[Package fGarch version 2110.80.1 Index]