SkewStudentDistribution {fSeries}R Documentation

Symmetric and Skew Student-t Distribution

Description

A collection and description of functions to compute density, distribution function, quantile function and to generate random variates for the symmetric and skew Sudent-t distribution with unit variance.

The functions are:

[dpqr]std Symmetric Student-t Distribution,
[dpqr]sstd Skew Student-t Distribution.

Usage

dstd(x, mean = 0, sd = 1, nu = 5)
pstd(q, mean = 0, sd = 1, nu = 5)
qstd(p, mean = 0, sd = 1, nu = 5)
rstd(n, mean = 0, sd = 1, nu = 5)

dsstd(x, mean = 0, sd = 1, nu = 5, xi = 1.5)
psstd(q, mean = 0, sd = 1, nu = 5, xi = 1.5)
qsstd(p, mean = 0, sd = 1, nu = 5, xi = 1.5)
rsstd(n, mean = 0, sd = 1, nu = 5, xi = 1.5)

Arguments

mean, sd, nu, xi location parameter mean, scale parameter sd, shape parameter nu, skewness parameter xi.
n number of observations.
p a numeric vector of probabilities.
x, q a numeric vector of quantiles.

Details

Symmetric Student-t Distibution:

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.

Skew Student-t Distribution:

The skew Student-t distribution functions are defined as described by Fernandez and Steel (2000). Note that the function have unit variance.

Value

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

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.

See Also

snormDistribution, sgedDistribution.

Examples

## sstd -
   xmpSeries("\nStart: Skew Student-t Distribuion:  > ")
   par(mfrow = c(2, 2), cex = 0.75)
   set.seed(1953)
   r = rsstd(n = 1000, nu =4, xi = 1.5)
   # Print Variance:
   var(r)
   plot(r, type = "l", main = "sstd: xi = 1.5")
   # Plot empirical density and compare with true density:
   hist(r, n = 30, xlim = c(-5, 5), probability = TRUE, 
     border = "white", col = "steelblue4")
   x = seq(-5, 5, 0.1)
   lines(x, dsnorm(x = x, xi = 1.5))
   # Plot df and compare with true df:
   plot(sort(r), (1:1000/1000), main = "Probability", col = "steelblue4")
   lines(x, psstd(x, xi = 1.5))
   # Compute quantiles:
   qsstd(psstd(q = -5:5, xi = 1.5), xi = 1.5) 

[Package fSeries version 200.10058 Index]