| oalog {VGAMdata} | R Documentation |
One-Altered Logarithmic Distribution
Description
Fits a one-altered logarithmic distribution based on a conditional model involving a Bernoulli distribution and a 1-truncated logarithmic distribution.
Usage
oalog(lpobs1 = "logitlink", lshape = "logitlink",
type.fitted = c("mean", "shape", "pobs1", "onempobs1"),
ipobs1 = NULL, gshape = ppoints(8), zero = NULL)
Arguments
lpobs1 |
Link function for the parameter |
lshape |
See |
gshape, type.fitted |
See |
ipobs1, zero |
See |
Details
The response Y is one with probability p_1,
or Y has a 1-truncated logarithmic distribution with
probability 1-p_1.
Thus 0 < p_1 < 1,
which is modelled as a function of the covariates. The one-altered
logarithmic distribution differs from the one-inflated
logarithmic distribution in that the former has ones coming from one
source, whereas the latter has ones coming from the logarithmic
distribution too. The one-inflated logarithmic distribution
is implemented in the VGAM package. Some people
call the one-altered logarithmic a hurdle model.
The input can be a matrix (multiple responses).
By default, the two linear/additive predictors
of oalog
are (logit(\phi), logit(s))^T.
Value
An object of class "vglmff"
(see vglmff-class).
The object is used by modelling functions
such as vglm,
and vgam.
The fitted.values slot of the fitted object,
which should be extracted by the generic function fitted,
returns the mean \mu (default) which is given by
\mu = \phi + (1-\phi) A
where A is the mean of the one-truncated
logarithmic distribution.
If type.fitted = "pobs1" then p_1 is
returned.
Note
This family function effectively combines
binomialff and
otlog into
one family function.
Author(s)
T. W. Yee
See Also
Gaitdlog,
Oalog,
logff,
oilog,
CommonVGAMffArguments,
simulate.vlm.
Examples
## Not run: odata <- data.frame(x2 = runif(nn <- 1000))
odata <- transform(odata, pobs1 = logitlink(-1 + 2*x2, inv = TRUE),
shape = logitlink(-2 + 3*x2, inv = TRUE))
odata <- transform(odata, y1 = roalog(nn, shape, pobs1 = pobs1),
y2 = roalog(nn, shape, pobs1 = pobs1))
with(odata, table(y1))
ofit <- vglm(cbind(y1, y2) ~ x2, oalog, data = odata, trace = TRUE)
coef(ofit, matrix = TRUE)
head(fitted(ofit))
head(predict(ofit))
summary(ofit)
## End(Not run)