| KISICHEL {gamlss.countKinf} | R Documentation |
K-inflated sichel distributions for fitting a GAMLSS model
Description
The function KISICHEL defines the K-inflated sichel distribution, a four parameter distribution, for a gamlss.family object to be used in GAMLSS fitting using the function gamlss(). The functions dKISICHEL, pKISICHEL, qKISICHEL and rKISICHEL define the density,
distribution function, quantile function and random generation for the K-inflated sichel, KISICHEL(), distribution.
Usage
KISICHEL(mu.link = "log", sigma.link = "log", nu.link = "identity",
tau.link = "logit", kinf="K")
dKISICHEL(x, mu = 1, sigma = 1, nu = -0.5, tau = 0.1, kinf=0, log = FALSE)
pKISICHEL(q, mu = 1, sigma = 1, nu = -0.5, tau = 0.1, kinf=0, lower.tail = TRUE,
log.p = FALSE)
qKISICHEL(p, mu = 1, sigma = 1, nu = -0.5, tau = 0.1, kinf=0, lower.tail = TRUE,
log.p = FALSE, max.value = 10000)
rKISICHEL(n, mu = 1, sigma = 1, nu = -0.5, tau = 0.1, kinf = 0,
max.value = 10000)
Arguments
mu.link |
Defines the |
sigma.link |
Defines the |
nu.link |
Defines the |
tau.link |
Defines the |
x |
vector of (non-negative integer) quantiles |
mu |
vector of positive means |
sigma |
vector of positive despersion parameter |
nu |
vector of nu |
tau |
vector of inflated point probability |
p |
vector of probabilities |
q |
vector of quantiles |
n |
number of random values to return |
kinf |
defines inflated point in generating K-inflated distribution |
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] |
max.value |
a constant, set to the default value of 10000 for how far the algorithm should look for q |
Details
The definition for the K-inflated sichel distribution.
Value
The functions KISICHEL return a gamlss.family object which can be used to fit K-inflated sichel distribution in the gamlss() function.
Author(s)
Saeed Mohammadpour <s.mohammadpour1111@gamlil.com>, Mikis Stasinopoulos <d.stasinopoulos@londonmet.ac.uk>
References
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.
Rigby, R. A. and Stasinopoulos D. M. (2010) The gamlss.family distributions, (distributed with this package or seehttp://www.gamlss.org/)
Stasinopoulos D. M., Rigby R.A., Heller G., Voudouris V., and De Bastiani F., (2017)Flexible Regression and Smoothing: Using GAMLSS in R, Chapman and Hall/CRC.
Najafabadi, A. T. P. and MohammadPour, S. (2017). A k-Inflated Negative Binomial Mixture Regression Model: Application to Rate-Making Systems. Asia-Pacific Journal of Risk and Insurance, 12.
See Also
Examples
#--------------------------------------------------------------------------------
# gives information about the default links for the Sichel distribution
KISICHEL()
#--------------------------------------------------------------------------------
# generate zero inflated sichel distribution
gen.Kinf(family=SICHEL, kinf=0)
# generate random sample from zero inflated sichel distribution
x<-rinf0SICHEL(1000,mu=1, sigma=.5, nu=.2, tau=.2)
# fit the zero inflated sichel distribution using gamlss
data<-data.frame(x=x)
## Not run:
gamlss(x~1, family=inf0SICHEL, data=data)
histDist(x, family=inf0SICHEL)
## End(Not run)
#--------------------------------------------------------------------------------
# generated one inflated sichel distribution
gen.Kinf(family=SICHEL, kinf=1)
# generate random sample from one inflated sichel distribution
x<-rinf1SICHEL(1000,mu=1, sigma=.5, nu=.2, tau=.2)
# fit the one inflated sichel distribution using gamlss
data<-data.frame(x=x)
## Not run:
gamlss(x~1, family=inf1SICHEL, data=data)
histDist(x, family=inf1SICHEL)
## End(Not run)
#--------------------------------------------------------------------------------
mu=4; sigma=.5; nu=.2; tau=.2;
par(mgp=c(2,1,0),mar=c(4,4,4,1)+0.1)
#plot the pdf using plot
plot(function(x) dinf1SICHEL(x, mu=mu, sigma=sigma, nu=nu, tau=tau),
from=0, to=20, n=20+1, type="h",xlab="x",ylab="f(x)",cex.lab=1.5)
#--------------------------------------------------------------------------------
#plot the cdf using plot
cdf <- stepfun(0:19, c(0,pinf1SICHEL(0:19, mu=mu, sigma=sigma, nu=nu, tau=tau)), f = 0)
plot(cdf, xlab="x", ylab="F(x)", verticals=FALSE, cex.points=.8, pch=16, main="",cex.lab=1.5)
#--------------------------------------------------------------------------------
#plot the qdf using plot
invcdf <- stepfun(seq(0.01,.99,length=19), qinf1SICHEL(seq(0.1,.99,length=20),
mu, sigma), f = 0)
plot(invcdf, ylab=expression(x[p]==F^{-1}(p)), do.points=FALSE,verticals=TRUE,
cex.points=.8, pch=16, main="",cex.lab=1.5, xlab="p")
#--------------------------------------------------------------------------------
# generate random sample
Ni <- rinf1SICHEL(1000, mu=mu, sigma=sigma, nu=nu, tau=tau)
hist(Ni,breaks=seq(min(Ni)-0.5,max(Ni)+0.5,by=1),col="lightgray",main="",cex.lab=2)
barplot(table(Ni))
#--------------------------------------------------------------------------------