acat {VGAM} | R Documentation |
Fits an adjacent categories regression model to an ordered (preferably) factor response.
acat(link = "loglink", parallel = FALSE, reverse = FALSE, zero = NULL, thresholds = c("unconstrained", "equidistant"), Treverse = reverse, Tref = if (Treverse) "M" else 1, whitespace = FALSE)
link |
Link function applied to the ratios of the
adjacent categories probabilities.
See |
parallel |
A logical, or formula specifying which terms have equal/unequal coefficients. |
reverse |
Logical.
By default, the linear/additive predictors used are
eta_j = log(P[Y=j+1]/P[Y=j])
for j=1,…,M.
If |
zero |
An integer-valued vector specifying which
linear/additive predictors are modelled as intercepts only.
The values must be from the set {1,2,...,M}.
See |
thresholds, Treverse, Tref |
See |
whitespace |
See |
In this help file the response Y is assumed to be a factor with ordered values 1,2,…,M+1, so that M is the number of linear/additive predictors eta_j. By default, the log link is used because the ratio of two probabilities is positive.
Internally, deriv3
is called to
perform symbolic differentiation and
consequently this family function will struggle if
M becomes too large.
If this occurs, try combining levels so that
M is effectively reduced.
One idea is to aggregate levels with the fewest observations
in them first.
An object of class "vglmff"
(see vglmff-class
).
The object is used by modelling functions
such as vglm
,
rrvglm
and vgam
.
No check is made to verify that the response is ordinal if the
response is a matrix;
see ordered
.
The response should be either a matrix of counts
(with row sums that are
all positive), or an ordered factor. In both cases,
the y
slot returned
by vglm
/vgam
/rrvglm
is the
matrix of counts.
For a nominal (unordered) factor response,
the multinomial logit model
(multinomial
) is more appropriate.
Here is an example of the usage of the parallel
argument.
If there are covariates x1
, x2
and x3
, then
parallel = TRUE ~ x1 + x2 -1
and
parallel = FALSE ~ x3
are equivalent.
This would constrain the regression coefficients
for x1
and x2
to be equal; those of the
intercepts and x3
would be different.
Thomas W. Yee
Agresti, A. (2013).
Categorical Data Analysis,
3rd ed. Hoboken, NJ, USA: Wiley.
Tutz, G. (2012).
Regression for Categorical Data,
Cambridge: Cambridge University Press.
Yee, T. W. (2010).
The VGAM package for categorical data analysis.
Journal of Statistical Software,
32, 1–34.
doi: 10.18637/jss.v032.i10.
cumulative
,
cratio
,
sratio
,
multinomial
,
margeff
,
pneumo
,
budworm
,
deriv3
.
pneumo <- transform(pneumo, let = log(exposure.time)) (fit <- vglm(cbind(normal, mild, severe) ~ let, acat, pneumo)) coef(fit, matrix = TRUE) constraints(fit) model.matrix(fit)