genpoisson {VGAM}R Documentation

Generalized Poisson distribution

Description

Estimation of the two parameters of a generalized Poisson distribution.

Usage

genpoisson(llambda = "elogit", ltheta = "loge",
           elambda = if (llambda == "elogit") list(min = -1, max = 1)
                     else list(),
           etheta = list(), ilambda = NULL, itheta = NULL,
           use.approx = TRUE, imethod = 1, zero = 1)

Arguments

llambda, ltheta

Parameter link functions for λ and θ. See Links for more choices. The λ parameter lies at least within the interval [-1,1]; see below for more details. The θ parameter is positive, therefore the default is the log link.

elambda, etheta

List. Extra argument for each of the links. See earg in Links for general information.

ilambda, itheta

Optional initial values for λ and θ. The default is to choose values internally.

use.approx

Logical. If TRUE then an approximation to the expected information matrix is used, otherwise Newton-Raphson is used.

imethod

An integer with value 1 or 2 which specifies the initialization method for the parameters. If failure to converge occurs try another value and/or else specify a value for ilambda and/or itheta.

zero

An integer vector, containing the value 1 or 2. If so, λ or θ respectively are modelled as an intercept only. If set to NULL then both linear/additive predictors are modelled as functions of the explanatory variables.

Details

The generalized Poisson distribution has density

f(y) = θ(θ+λ * y)^(y-1) * exp(-θ-λ * y) / y!

for θ > 0 and y = 0,1,2,…. Now max(-1,-θ/m) ≤ lambda ≤ 1 where m (≥ 4) is the greatest positive integer satisfying θ + mλ > 0 when λ < 0 [and then P(Y=y) = 0 for y > m]. Note the complicated support for this distribution means, for some data sets, the default link for llambda is not always appropriate.

An ordinary Poisson distribution corresponds to lambda=0. The mean (returned as the fitted values) is E(Y) = θ / (1 - λ) and the variance is θ / (1 - λ)^3.

For more information see Consul and Famoye (2006) for a summary and Consul (1989) for full details.

Value

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

Note

This distribution is useful for dispersion modelling. Convergence problems may occur when lambda is very close to 0 or 1.

Author(s)

T. W. Yee

References

Consul, P. C. and Famoye, F. (2006) Lagrangian Probability Distributions, Boston: Birkhauser.

Jorgensen, B. (1997) The Theory of Dispersion Models. London: Chapman & Hall

Consul, P. C. (1989) Generalized Poisson Distributions: Properties and Applications. New York: Marcel Dekker.

See Also

poissonff.

Examples

gdata = data.frame(x2 = runif(nn <- 200))
gdata = transform(gdata, y = rpois(nn, exp(2-x2))) # Ordinary Poisson data
fit  = vglm(y ~ x2, genpoisson(zero = 1), gdata, trace = TRUE)
coef(fit, matrix = TRUE)
summary(fit)

[Package VGAM version 0.8-4 Index]