genpoisson | R Documentation |

Estimation of the two-parameter generalized Poisson distribution.

```
genpoisson(llambda = "rhobitlink", ltheta = "loglink",
ilambda = NULL, itheta = NULL, imethod = 1,
ishrinkage = 0.95, zero = "lambda")
```

`llambda` , `ltheta` |
Parameter link functions for |

`ilambda` , `itheta` |
Optional initial values for |

`imethod` |
An integer with value |

`ishrinkage` , `zero` |
See |

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.

An object of class `"vglmff"`

(see `vglmff-class`

).
The object is used by modelling functions such
as `vglm`

,
and `vgam`

.

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`

.

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.

T. W. Yee.
Easton Huch derived the EIM and it has been implemented
in the `weights`

slot.

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. (2024).
Generally altered, inflated, truncated and deflated regression.
*Statistical Science*, **39** (in press).

`genpoisson1`

,
`genpoisson2`

,
`poissonff`

,
`dpois`

.
`dgenpois0`

,
`rhobitlink`

,
`extlogitlink`

.

```
## 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)
```

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.