yip88 {VGAM} | R Documentation

## Zero-Inflated Poisson Distribution (Yip (1988) algorithm)

### Description

Fits a zero-inflated Poisson distribution based on Yip (1988).

### Usage

    yip88(link.lambda = "loge", n.arg = NULL)

### Arguments

`link.lambda` | Link function for the usual lambda parameter. See `Links` for more choices.
`n.arg` | The total number of observations in the data set. Needed when the response variable has all the zeros deleted from it, so that the number of zeros can be determined.

### Details

The method implemented here, Yip (1988), maximizes a conditional likelihood. Consequently, the methodology used here deletes the zeros from the data set, and is thus related to the positive Poisson distribution (where P(Y=0) = 0).

The probability function of Y is 0 with probability phi, and Poisson(lambda) with probability 1-phi. Thus

P(Y=0) = phi + (1-phi) * P(W=0)

where W is Poisson(lambda). The mean, (1-phi) * lambda, can be obtained by the extractor function `fitted` applied to the object.

This family function treats phi as a scalar. If you want to model both phi and lambda as a function of covariates, try `zipoisson`.

### Value

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

### Warning

Under- or over-flow may occur if the data is ill-conditioned. Yip (1988) only considered phi being a scalar and not modelled as a function of covariates. To get around this limitation, try `zipoisson`.

Inference obtained from `summary.vglm` and `summary.vgam` may or may not be correct. In particular, the p-values, standard errors and degrees of freedom may need adjustment. Use simulation on artificial data to check that these are reasonable.

### Note

The data may be inputted in two ways. The first is when the response is a vector of positive values, with the argument `n` in `yip88` specifying the total number of observations. The second is simply include all the data in the response. In this case, the zeros are trimmed off during the computation, and the `x` and `y` slots of the object, if assigned, will reflect this.

The estimate of phi is placed in the `misc` slot as `@misc$phi`. However, this estimate is computed only for intercept models, i.e., the formula is of the form `y ~ 1`.

### Author(s)

Thomas W. Yee

### References

Yip, P. (1988) Inference about the mean of a Poisson distribution in the presence of a nuisance parameter. The Australian Journal of Statistics, 30, 299–306.

Angers, J-F. and Biswas, A. (2003) A Bayesian analysis of zero-inflated generalized Poisson model. Computational Statistics & Data Analysis, 42, 37–46.

Documentation accompanying the VGAM package at http://www.stat.auckland.ac.nz/~yee contains further information and examples.

### See Also

`zipoisson`, `Zipois`, `zapoisson`, `pospoisson`, `poissonff`, `dzipois`.

### Examples

    # Generate some artificial data
    phi = 0.35; lambda = 2
    y = rzipois(n <- 1000, lambda, phi)
    table(y)

    # Two equivalent ways of fitting the same model
    fit1 = vglm(y ~ 1, yip88(n=length(y)), subset=y>0, trace=TRUE, crit="c")
    fit2 = vglm(y ~ 1, yip88, trace=TRUE, crit="c")
    (true.mean = (1-phi) * lambda)
    mean(y)
    head(fitted(fit1))
    fit1@misc$phi      # The estimate of phi

    # Compare the ZIP with the positive Poisson distribution
    pp = vglm(y ~ 1, pospoisson, subset=y>0, tr=TRUE, crit="c")
    coef(pp)
    Coef(pp)
    coef(fit1) - coef(pp)            # Same
    head(fitted(fit1) - fitted(pp))  # Different

    # Another example ------------------------------
    y = 0:7    # Data from Angers and Biswas (2003)
    w = c(182, 41, 12, 2, 2, 0, 0, 1)
    y = y[w>0]
    w = w[w>0]
    yy = rep(y,w)

    fit3 = vglm(yy ~ 1, yip88(n=length(yy)), subset=yy>0, trace=TRUE, crit="c")
    fit3@misc$phi  # Estimate of phi (they get 0.5154 with standard error 0.0707)
    coef(fit3, matrix=TRUE)
    Coef(fit3)  # Estimate of lambda (they get 0.6997 with standard error 0.1520)
    head(fitted(fit3))
    mean(yy) # compare this with fitted(fit3)

[Package VGAM version 0.7-9 Index]