Maximum likelihood estimation of the 2-parameter inverse Lomax distribution.

inv.lomax(lscale = "loglink", lshape2.p = "loglink", iscale = NULL,
    ishape2.p = NULL, imethod = 1, gscale = exp(-5:5),
    gshape2.p = exp(-5:5), probs.y = c(0.25, 0.5, 0.75),
    zero = "shape2.p")

Arguments

lscale, lshape2.p

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

iscale, ishape2.p, imethod, zero

See CommonVGAMffArguments for information. For imethod = 2 a good initial value for ishape2.p is needed to obtain a good estimate for the other parameter.

gscale, gshape2.p

See CommonVGAMffArguments for information.

probs.y

See CommonVGAMffArguments for information.

Details

The 2-parameter inverse Lomax distribution is the 4-parameter generalized beta II distribution with shape parameters \(a=q=1\). It is also the 3-parameter Dagum distribution with shape parameter \(a=1\), as well as the beta distribution of the second kind with \(q=1\). More details can be found in Kleiber and Kotz (2003).

The inverse Lomax distribution has density $$f(y) = p y^{p-1} / [b^p \{1 + y/b\}^{p+1}]$$ for \(b > 0\), \(p > 0\), \(y \geq 0\). Here, \(b\) is the scale parameter scale, and p is a shape parameter. The mean does not seem to exist; the median is returned as the fitted values. This family function handles multiple responses.

Value

An object of class "vglmff" (see vglmff-class). The object is used by modelling functions such as vglm, and vgam.

References

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

Author

T. W. Yee

Note

See the notes in genbetaII.

Examples

idata <- data.frame(y = rinv.lomax(2000, sc = exp(2), exp(1)))
fit <- vglm(y ~ 1, inv.lomax, data = idata, trace = TRUE)
#> Iteration 1: loglikelihood = -10404.2582
#> Iteration 2: loglikelihood = -10404.2581
#> Iteration 3: loglikelihood = -10404.2581
fit <- vglm(y ~ 1, inv.lomax(iscale = exp(3)), data = idata,
            trace = TRUE, epsilon = 1e-8, crit = "coef")
#> Iteration 1: coefficients = 2.766333785, 0.397908761
#> Iteration 2: coefficients = 2.279391234, 0.764424867
#> Iteration 3: coefficients = 2.085208122, 0.933543841
#> Iteration 4: coefficients = 2.039071289, 0.972541022
#> Iteration 5: coefficients = 2.034820340, 0.975889893
#> Iteration 6: coefficients = 2.034555668, 0.976083985
#> Iteration 7: coefficients = 2.03453974, 0.97609556
#> Iteration 8: coefficients = 2.034538783, 0.976096255
#> Iteration 9: coefficients = 2.034538726, 0.976096296
#> Iteration 10: coefficients = 2.034538722, 0.976096299
coef(fit, matrix = TRUE)
#>             loglink(scale) loglink(shape2.p)
#> (Intercept)       2.034539         0.9760963
Coef(fit)
#>    scale shape2.p 
#> 7.648723 2.654075 
summary(fit)
#> 
#> Call:
#> vglm(formula = y ~ 1, family = inv.lomax(iscale = exp(3)), data = idata, 
#>     trace = TRUE, epsilon = 1e-08, crit = "coef")
#> 
#> Coefficients: 
#>               Estimate Std. Error z value Pr(>|z|)    
#> (Intercept):1  2.03454    0.10820   18.80   <2e-16 ***
#> (Intercept):2  0.97610    0.08171   11.95   <2e-16 ***
#> ---
#> Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
#> 
#> Names of linear predictors: loglink(scale), loglink(shape2.p)
#> 
#> Log-likelihood: -10404.26 on 3998 degrees of freedom
#> 
#> Number of Fisher scoring iterations: 10 
#> 
#> No Hauck-Donner effect found in any of the estimates
#>