betaII: Beta Distribution of the Second Kind

View source: R/family.actuary.R

betaIIR Documentation

Beta Distribution of the Second Kind


Maximum likelihood estimation of the 3-parameter beta II distribution.


betaII(lscale = "loglink", lshape2.p = "loglink",
       lshape3.q = "loglink", iscale = NULL, ishape2.p = NULL,
       ishape3.q = NULL, imethod = 1,
       gscale = exp(-5:5), gshape2.p = exp(-5:5),
       gshape3.q = seq(0.75, 4, by = 0.25),
       probs.y = c(0.25, 0.5, 0.75), zero = "shape")


lscale, lshape2.p, lshape3.q

Parameter link functions applied to the (positive) parameters scale, p and q. See Links for more choices.

iscale, ishape2.p, ishape3.q, imethod, zero

See CommonVGAMffArguments for information.

gscale, gshape2.p, gshape3.q

See CommonVGAMffArguments for information.


See CommonVGAMffArguments for information.


The 3-parameter beta II is the 4-parameter generalized beta II distribution with shape parameter a=1. It is also known as the Pearson VI distribution. Other distributions which are special cases of the 3-parameter beta II include the Lomax (p=1) and inverse Lomax (q=1). More details can be found in Kleiber and Kotz (2003).

The beta II distribution has density

f(y) = y^{p-1} / [b^p B(p,q) \{1 + y/b\}^{p+q}]

for b > 0, p > 0, q > 0, y \geq 0. Here, b is the scale parameter scale, and the others are shape parameters. The mean is

E(Y) = b \, \Gamma(p + 1) \, \Gamma(q - 1) / (\Gamma(p) \, \Gamma(q))

provided q > 1; 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.


T. W. Yee


Kleiber, C. and Kotz, S. (2003). Statistical Size Distributions in Economics and Actuarial Sciences, Hoboken, NJ, USA: Wiley-Interscience.

See Also

betaff, genbetaII, dagum, sinmad, fisk, inv.lomax, lomax, paralogistic, inv.paralogistic.


bdata <- data.frame(y = rsinmad(2000, shape1.a = 1,
         shape3.q = exp(2), scale = exp(1)))  # Not genuine data!
# fit <- vglm(y ~ 1, betaII, data = bdata, trace = TRUE)
fit <- vglm(y ~ 1, betaII(ishape2.p = 0.7, ishape3.q = 0.7),
            data = bdata, trace = TRUE)
coef(fit, matrix = TRUE)

VGAM documentation built on Sept. 19, 2023, 9:06 a.m.