| SkewStudentDistribution {fSeries} | R Documentation |
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. |
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)
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. |
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.
All values are numeric vectors:
d* returns the density,
p* returns the distribution function,
q* returns the quantile function, and
r* generates random deviates.
Diethelm Wuertz for the Rmetrics R-port.
Fernandez C., Steel M.F.J. (2000); On Bayesian Modelling of Fat Tails and Skewness, Preprint, 31 pages.
snormDistribution,
sgedDistribution.
## 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)