splitt {dng} | R Documentation |
Density, distribution function, quantile function and random generation for the normal distribution for the split student-t distribution.
dsplitt(x, mu, df, phi, lmd, logarithm) psplitt(q, mu, df, phi, lmd) qsplitt(p, mu, df, phi, lmd) rsplitt(n, mu, df, phi, lmd)
x |
vector of quantiles. |
mu |
vector of location parameter. (The mode of the density) |
df |
degrees of freedom (> 0, can be non-integer). df = Inf is also allowed. |
phi |
vector of scale parameters (>0). |
lmd |
vector of skewness parameters (>0). If is 1, reduced to the symmetric student t distribution. |
logarithm |
logical; if TRUE, probabilities p are given as log(p). |
q |
vector of quantiles. |
p |
vector of probability. |
n |
number of observations. If length(n) > 1, the length is taken to be the number required. |
The random variable y follows a split-t distribution with ν>0 degrees of freedom, y~t(μ, φ, λ, ν), if its density function is of the form
C K(μ, φ, ν,)I(y≤qμ) + C K(μ, λ φ, ν)I(y>μ),
where,
K(μ, φ, ν,) =[ν/(ν+(y-μ)^2 /φ ^2)]^{(ν+1)/2}
is the kernel of a student t density with variance φ ^2ν/(ν-2) and
c = 2[(1+λ)φ (√ ν) Beta(ν/2,1/2)]^{-1}
is the normalization constant.
dsplitt
gives the density; psplitt
gives the percentile;
qsplitt
gives the quantile; and rsplitt
gives the random
variables. Invalid arguments will result in return value NaN, with a warning.
The numerical arguments other than n are recycled to the length of the result. Only the first elements of the logical arguments are used.
psplitt
: Percentile for the split-t distribution.
qsplitt
: Quantile for the split-t distribution.
rsplitt
: Randon variables from the split-t distribution.
Feng Li, Jiayue Zeng
Li, F., Villani, M., & Kohn, R. (2010). Flexible modeling of conditional distributions using smooth mixtures of asymmetric student t densities. Journal of Statistical Planning & Inference, 140(12), 3638-3654.
splitt_mean()
,
splitt_var()
,splitt_skewness()
and
splitt_kurtosis()
for numerical characteristics of the
Split-t distribution.
n <- 3 mu <- c(0,1,2) df <- rep(10,3) phi <- c(0.5,1,2) lmd <- c(1,2,3) q0 <- rsplitt(n, mu, df, phi, lmd) d0 <- dsplitt(q0, mu, df, phi, lmd, logarithm = FALSE) p0 <- psplitt(q0, mu, df, phi, lmd) q1 <- qsplitt(p0,mu, df, phi, lmd) all.equal(q0, q1)