Dagum Distribution Family Function
Maximum likelihood estimation of the 3-parameter Dagum distribution.
dagum(lscale = "loglink", lshape1.a = "loglink", lshape2.p = "loglink",
iscale = NULL, ishape1.a = NULL, ishape2.p = NULL, imethod = 1,
lss = TRUE, gscale = exp(-5:5), gshape1.a = seq(0.75, 4, by = 0.25),
gshape2.p = exp(-5:5), probs.y = c(0.25, 0.5, 0.75), zero = "shape")lss |
See |
lshape1.a, lscale, lshape2.p |
Parameter link functions applied to the
(positive) parameters |
iscale, ishape1.a, ishape2.p, imethod, zero |
See |
gscale, gshape1.a, gshape2.p |
See |
probs.y |
See |
The 3-parameter Dagum distribution is the 4-parameter generalized beta II distribution with shape parameter q=1. It is known under various other names, such as the Burr III, inverse Burr, beta-K, and 3-parameter kappa distribution. It can be considered a generalized log-logistic distribution. Some distributions which are special cases of the 3-parameter Dagum are the inverse Lomax (a=1), Fisk (p=1), and the inverse paralogistic (a=p). More details can be found in Kleiber and Kotz (2003).
The Dagum distribution has a cumulative distribution function
F(y) = [1 + (y/b)^(-a)]^(-p)
which leads to a probability density function
f(y) = ap y^(ap-1) / [b^(ap) (1 + (y/b)^a)^(p+1)]
for a > 0, b > 0, p > 0, y >= 0.
Here, b is the scale parameter scale,
and the others are shape parameters.
The mean is
E(Y) = b gamma(p + 1/a) gamma(1 - 1/a) / gamma(p)
provided -ap < 1 < a; these are returned as the fitted values. This family function handles multiple responses.
An object of class "vglmff" (see vglmff-class).
The object is used by modelling functions such as vglm,
and vgam.
See the notes in genbetaII.
From Kleiber and Kotz (2003), the MLE is rather sensitive to isolated observations located sufficiently far from the majority of the data. Reliable estimation of the scale parameter require n>7000, while estimates for a and p can be considered unbiased for n>2000 or 3000.
T. W. Yee
Kleiber, C. and Kotz, S. (2003). Statistical Size Distributions in Economics and Actuarial Sciences, Hoboken, NJ, USA: Wiley-Interscience.
ddata <- data.frame(y = rdagum(n = 3000, scale = exp(2),
shape1 = exp(1), shape2 = exp(1)))
fit <- vglm(y ~ 1, dagum(lss = FALSE), data = ddata, trace = TRUE)
fit <- vglm(y ~ 1, dagum(lss = FALSE, ishape1.a = exp(1)),
data = ddata, trace = TRUE)
coef(fit, matrix = TRUE)
Coef(fit)
summary(fit)Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.