The Kumaraswamy Inverse Weibull family
Arguments
- mu.link
defines the mu.link, with "log" link as the default for the mu parameter.
- sigma.link
defines the sigma.link, with "log" link as the default for the sigma.
- nu.link
defines the nu.link, with "log" link as the default for the nu parameter.
Value
Returns a gamlss.family object which can be used to fit a KumIW distribution in the gamlss()
function.
Details
The Kumaraswamy Inverse Weibull Distribution with parameters mu
,
sigma
and nu
has density given by
\(f(x)= \mu \sigma \nu x^{-\mu - 1} \exp{- \sigma x^{-\mu}} (1 - \exp{- \sigma x^{-\mu}})^{\nu - 1},\)
for \(x > 0\), \(\mu > 0\), \(\sigma > 0\) and \(\nu > 0\).
References
Almalki SJ, Nadarajah S (2014). “Modifications of the Weibull distribution: A review.” Reliability Engineering & System Safety, 124, 32--55. doi:10.1016/j.ress.2013.11.010 .
Shahbaz MQ, Shahbaz S, Butt NS (2012). “The Kumaraswamy-Inverse Weibull Distribution.” Shahbaz, MQ, Shahbaz, S., & Butt, NS (2012). The Kumaraswamy--Inverse Weibull Distribution. Pakistan journal of statistics and operation research, 8(3), 479--489.
Author
Johan David Marin Benjumea, johand.marin@udea.edu.co
Examples
# Example 1
# Generating some random values with
# known mu, sigma, nu and tau
y <- rKumIW(n=1000, mu = 1.5, sigma= 1.5, nu = 5)
# Fitting the model
require(gamlss)
mod <- gamlss(y~1, sigma.fo=~1, nu.fo=~1, family='KumIW',
control=gamlss.control(n.cyc=5000, trace=FALSE))
# Extracting the fitted values for mu, sigma and nu
# using the inverse link function
exp(coef(mod, what='mu'))
#> (Intercept)
#> 1.028873
exp(coef(mod, what='sigma'))
#> (Intercept)
#> 1.511681
exp(coef(mod, what='nu'))
#> (Intercept)
#> 5.184874
# Example 2
# Generating random values under some model
n <- 200
x1 <- runif(n, min=0.4, max=0.6)
x2 <- runif(n, min=0.4, max=0.6)
mu <- exp(1 - x1)
sigma <- exp(1 - x2)
nu <- 5
x <- rKumIW(n=n, mu, sigma, nu)
mod <- gamlss(x~x1, sigma.fo=~x2, nu.fo=~1, family=KumIW,
control=gamlss.control(n.cyc=5000, trace=FALSE))
coef(mod, what="mu")
#> (Intercept) x1
#> -0.3848230 0.5982428
coef(mod, what="sigma")
#> (Intercept) x2
#> 1.451138 -1.662854
exp(coef(mod, what="nu"))
#> (Intercept)
#> 6.800247