This function defines the , a four parameter distribution, for a gamlss.family object to be used for a
GAMLSS fitting using the function gamlss(). The functions dJSU,
pJSU, qJSU and rJSU define the density, distribution function, quantile function and random
generation for the the Johnson's Su distribution.
JSU(mu.link = "identity", sigma.link = "log", nu.link = "identity", tau.link = "log")
dJSU(x, mu = 0, sigma = 1, nu = 1, tau = 0.5, log = FALSE)
pJSU(q, mu = 0, sigma = 1, nu = 1, tau = 0.5, lower.tail = TRUE, log.p = FALSE)
qJSU(p, mu = 0, sigma = 1, nu = 0, tau = 0.5, lower.tail = TRUE, log.p = FALSE)
rJSU(n, mu = 0, sigma = 1, nu = 0, tau = 0.5)Defines the mu.link, with "identity" link as the default for the mu parameter. Other links are "inverse" "log" ans "own"
Defines the sigma.link, with "log" link as the default for the sigma parameter. Other links are "inverse", "identity" ans "own"
Defines the nu.link, with "identity" link as the default for the nu parameter. Other links are "onverse", "log" and "own"
Defines the tau.link, with "log" link as the default for the tau parameter. Other links are "onverse", "identity" ans "own"
vector of quantiles
vector of location parameter values
vector of scale parameter values
vector of skewness nu parameter values
vector of kurtosis tau parameter values
logical; if TRUE, probabilities p are given as log(p).
logical; if TRUE (default), probabilities are P[X <= x], otherwise, P[X > x]
vector of probabilities.
number of observations. If length(n) > 1, the length is
taken to be the number required
JSU() returns a gamlss.family object which can be used to fit a Johnson's Su distribution in the gamlss() function.
dJSU() gives the density, pJSU() gives the distribution
function, qJSU() gives the quantile function, and rJSU()
generates random deviates.
The function JSU uses first derivatives square in the fitting procedure so
standard errors should be interpreted with caution
The probability density function of the Jonhson's SU distribution, (JSU), is defined as
$$f(y|n,\mu,\sigma\,\nu,\tau)==\frac{1}{c \sigma} \frac{1}{\tau(z^2+1)^{\frac{1}{2}}} \frac{1}{\sqrt{2\pi}} \hspace{1mm} \exp{\left[ -\frac{1}{2} r^2 \right]}$$
for \( -\infty < y < \infty \), \(\mu=(-\infty,+\infty)\), \(\sigma>0\), \(\nu=(-\infty,+\infty)\) and \(\tau>0\). where \(r=-\nu+\frac{1}{\tau} \sinh^{-1}(z)\), \(z = \frac{y-(\mu+c\sigma w^{\frac{1}{2}}\sinh{\Omega})}{c\sigma}\), \(c = [ \frac{1}{2}(w-1)(w \cosh{2 \Omega} +1) ]^{\frac{1}{2}}\), \(w=e^{\tau^2}\) and \(\Omega = -\nu\tau\).
This is a reparameterization of the original Johnson Su distribution, Johnson (1954),
so the parameters mu and sigma are the mean and the standard deviation of the distribution.
The parameter nu determines the skewness of the distribution with nu>0 indicating positive skewness and
nu<0 negative. The parameter tau determines the kurtosis of the distribution. tau should be positive and most likely in the region
from zero to 1. As tau goes to 0 (and for nu=0) the distribution approaches the the Normal density function.
The distribution is appropriate for leptokurtic data that is data with kurtosis larger that the Normal distribution one.
Johnson, N. L. (1954). Systems of frequency curves derived from the first law of Laplace., Trabajos de Estadistica, 5, 283-291.
Rigby, R. A. and Stasinopoulos D. M. (2005). Generalized additive models for location, scale and shape,(with discussion), Appl. Statist., 54, part 3, pp 507-554.
Stasinopoulos D. M. Rigby R. A. and Akantziliotou C. (2006) Instructions on how to use the GAMLSS package in R. Accompanying documentation in the current GAMLSS help files, (see also http://www.gamlss.org/).
Stasinopoulos D. M. Rigby R.A. (2007) Generalized additive models for location scale and shape (GAMLSS) in R. Journal of Statistical Software, Vol. 23, Issue 7, Dec 2007, http://www.jstatsoft.org/v23/i07.
JSU()
plot(function(x)dJSU(x, mu=0,sigma=1,nu=-1, tau=.5), -4, 4,
main = "The JSU density mu=0,sigma=1,nu=-1, tau=.5")
plot(function(x) pJSU(x, mu=0,sigma=1,nu=-1, tau=.5), -4, 4,
main = "The JSU cdf mu=0, sigma=1, nu=-1, tau=.5")
# library(gamlss)
# data(abdom)
# h<-gamlss(y~cs(x,df=3), sigma.formula=~cs(x,1), family=JSU, data=abdom)
Run the code above in your browser using DataLab