negbinomial.size | R Documentation |
Maximum likelihood estimation of the mean parameter of a negative binomial distribution with known size parameter.
negbinomial.size(size = Inf, lmu = "loglink", imu = NULL,
iprobs.y = 0.35, imethod = 1,
ishrinkage = 0.95, zero = NULL)
size |
Numeric, positive.
Same as argument |
lmu , imu |
Same as |
iprobs.y , imethod |
Same as |
zero , ishrinkage |
Same as |
This VGAM family function estimates only the mean parameter of
the negative binomial distribution.
See negbinomial
for general information.
Setting size = 1
gives what might
be called the NB-G (geometric model;
see Hilbe (2011)).
The default, size = Inf
, corresponds to the Poisson distribution.
An object of class "vglmff"
(see vglmff-class
).
The object is used by modelling functions such as vglm
,
rrvglm
and vgam
.
If lmu = "nbcanlink"
in negbinomial.size()
then
the size
argument here should be assigned and
these values are recycled.
Thomas W. Yee
Hilbe, J. M. (2011). Negative Binomial Regression, 2nd Edition. Cambridge: Cambridge University Press.
Yee, T. W. (2014). Reduced-rank vector generalized linear models with two linear predictors. Computational Statistics and Data Analysis, 71, 889–902.
negbinomial
,
nbcanlink
(NB-C model),
poissonff
,
rnbinom
,
simulate.vlm
.
# Simulated data with various multiple responses
size1 <- exp(1); size2 <- exp(2); size3 <- exp(0); size4 <- Inf
ndata <- data.frame(x2 = runif(nn <- 1000))
ndata <- transform(ndata, eta1 = -1 - 2 * x2, # eta1 must be negative
size1 = size1)
ndata <- transform(ndata,
mu1 = nbcanlink(eta1, size = size1, inv = TRUE))
ndata <- transform(ndata,
y1 = rnbinom(nn, mu = mu1, size = size1), # NB-C
y2 = rnbinom(nn, mu = exp(2 - x2), size = size2),
y3 = rnbinom(nn, mu = exp(3 + x2), size = size3), # NB-G
y4 = rpois(nn, lambda = exp(1 + x2)))
# Also known as NB-C with size known (Hilbe, 2011)
fit1 <- vglm(y1 ~ x2, negbinomial.size(size = size1, lmu = "nbcanlink"),
data = ndata, trace = TRUE)
coef(fit1, matrix = TRUE)
head(fit1@misc$size) # size saved here
fit2 <- vglm(cbind(y2, y3, y4) ~ x2, data = ndata, trace = TRUE,
negbinomial.size(size = c(size2, size3, size4)))
coef(fit2, matrix = TRUE)
head(fit2@misc$size) # size saved here
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.