Generalized Gamma distribution for fitting a GAMLSS

Share:

Description

The function GG defines the generalized gamma distribution, a three parameter distribution, for a gamlss.family object to be used in GAMLSS fitting using the function gamlss(). The parameterization used has the mean of the distribution equal to mu and the variance equal to (sigma^2)*(mu^2). The functions dGG, pGG, qGG and rGG define the density, distribution function, quantile function and random generation for the specific parameterization of the generalized gamma distribution defined by function GG.

Usage

1
2
3
4
5
6
7
8
9
GG(mu.link = "log", sigma.link = "log", 
                       nu.link = "identity")
dGG(x, mu=1, sigma=0.5, nu=1,  
                      log = FALSE)
pGG(q, mu=1, sigma=0.5, nu=1,  lower.tail = TRUE, 
                     log.p = FALSE)
qGG(p, mu=1, sigma=0.5, nu=1,  lower.tail = TRUE, 
                     log.p = FALSE )
rGG(n, mu=1, sigma=0.5, nu=1)

Arguments

mu.link

Defines the mu.link, with "log" link as the default for the mu parameter, other links are "inverse" and "identity"

sigma.link

Defines the sigma.link, with "log" link as the default for the sigma parameter, other links are "inverse" and "identity"

nu.link

Defines the nu.link, with "identity" link as the default for the sigma parameter, other links are "1/nu^2" and "log"

x,q

vector of quantiles

mu

vector of location parameter values

sigma

vector of scale parameter values

nu

vector of shape parameter values

log, log.p

logical; if TRUE, probabilities p are given as log(p).

lower.tail

logical; if TRUE (default), probabilities are P[X <= x], otherwise, P[X > x]

p

vector of probabilities

n

number of observations. If length(n) > 1, the length is taken to be the number required

Details

The specific parameterization of the generalized gamma distribution used in GG is

f(y|mu,sigma,nu)=theta^theta*z^theta*nu*e^(-theta*z)/(Gamma(theta)*y)

where z =(y/mu)^nu, theta = 1/(sigma^2*abs(nu)^2) for y>0, mu>0, sigma>0 and -Inf>nu>Inf. Note that for nu=0 the distribution is log normal.

Value

GG() returns a gamlss.family object which can be used to fit a generalized gamma distribution in the gamlss() function. dGG() gives the density, pGG() gives the distribution function, qGG() gives the quantile function, and rGG() generates random deviates.

Author(s)

Mikis Stasinopoulos, Bob Rigby and Nicoleta Motpan

References

Lopatatzidis, A. and Green, P. J. (2000), Nonparametric quantile regression using the gamma distribution, unpublished.

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.

See Also

gamlss.family, GA

Examples

1
2
3
4
5
6
y<-rGG(100,mu=1,sigma=0.1, nu=-.5) # generates 100 random observations  
hist(y)
# library(gamlss)
#histDist(y, family=GG)
#m1 <-gamlss(y~1,family=GG)
#prof.dev(m1, "nu", min=-2, max=2, step=0.2)

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.