genpoisson {VGAMdata} | R Documentation |
Generalized Poisson Regression
Description
Estimation of the two-parameter generalized Poisson distribution.
Usage
genpoisson(llambda = "rhobitlink", ltheta = "loglink",
ilambda = NULL, itheta = NULL, imethod = 1,
ishrinkage = 0.95, zero = "lambda")
Arguments
llambda , ltheta |
Parameter link functions for |
ilambda , itheta |
Optional initial values for |
imethod |
An integer with value |
ishrinkage , zero |
See |
Details
This family function is not recommended for use;
instead try
genpoisson1
or
genpoisson2
.
For underdispersion with respect to the Poisson
try the GTE (generally-truncated expansion) method
described by Yee and Ma (2023).
The generalized Poisson distribution has density
f(y)=\theta(\theta+\lambda y)^{y-1} \exp(-\theta-\lambda y) / y!
for \theta > 0
and y = 0,1,2,\ldots
.
Now \max(-1,-\theta/m) \leq \lambda \leq 1
where m (\geq 4)
is the greatest positive
integer satisfying \theta + m\lambda > 0
when \lambda < 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
will not always work, and
some tinkering may be required to get it running.
As Consul and Famoye (2006) state on p.165, the lower limits
on \lambda
and m \ge 4
are imposed
to ensure that there are at least 5 classes with nonzero
probability when \lambda
is negative.
An ordinary Poisson distribution corresponds
to \lambda = 0
.
The mean (returned as the fitted values) is
E(Y) = \theta / (1 - \lambda)
and the variance is \theta / (1 - \lambda)^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
.
Warning
Monitor convergence!
This family function is fragile.
Don't get confused because theta
(and not lambda
) here really
matches more closely with lambda
of
dpois
.
Note
This family function handles multiple responses.
This distribution is potentially useful for dispersion modelling.
Convergence problems may occur when lambda
is very close
to 0 or 1.
If a failure occurs then you might want to try something like
llambda = extlogitlink(min = -0.9, max = 1)
to handle the LHS complicated constraint,
and if that doesn't work, try
llambda = extlogitlink(min = -0.8, max = 1)
, etc.
Author(s)
T. W. Yee.
Easton Huch derived the EIM and it has been implemented
in the weights
slot.
References
Consul, P. C. (1989). Generalized Poisson Distributions: Properties and Applications. New York, USA: Marcel Dekker.
Consul, P. C. and Famoye, F. (2006). Lagrangian Probability Distributions, Boston, USA: Birkhauser.
Jorgensen, B. (1997). The Theory of Dispersion Models. London: Chapman & Hall
Yee, T. W. and Ma, C. (2023) Generally altered, inflated, truncated and deflated regression. In preparation.
See Also
genpoisson1
,
genpoisson2
,
poissonff
,
dpois
.
dgenpois0
,
rhobitlink
,
extlogitlink
.
Examples
## Not run:
gdata <- data.frame(x2 = runif(nn <- 500)) # NBD data:
gdata <- transform(gdata, y1 = rnbinom(nn, exp(1), mu = exp(2 - x2)))
fit <- vglm(y1 ~ x2, genpoisson, data = gdata, trace = TRUE)
coef(fit, matrix = TRUE)
summary(fit)
## End(Not run)