terms.object {stats} | R Documentation |
An object of class terms
holds information about a
model. Usually the model was specified in terms of a
formula
and that formula was used to determine the terms
object.
The object itself is simply the formula supplied to the call of
terms.formula
. The object has a number of attributes
and they are used to construct the model frame:
factors |
A matrix of variables by terms showing which variables
appear in which terms. The entries are 0 if the variable does not
occur in the term, 1 if it does occur and should be coded by
contrasts, and 2 if it occurs and should be coded via dummy
variables for all levels (as when an intercept or lower-order term
is missing). If there are no terms other than an intercept and offsets,
this is |
term.labels |
A character vector containing the labels for each
of the terms in the model, except for offsets. Non-syntactic names
will be quoted by backticks. Note that these are after possible
re-ordering (unless argument |
variables |
A call to |
intercept |
Either 0, indicating no intercept is to be fit, or 1 indicating that an intercept is to be fit. |
order |
A vector of the same length as |
response |
The index of the variable (in variables) of the response (the left hand side of the formula). Zero, if there is no response. |
offset |
If the model contains |
specials |
If a |
dataClasses |
optional. A named character vector giving the classes
(as given by |
The object has class c("terms", "formula")
.
These objects are different from those found in S. In particular
there is no formula
attribute, instead the object is itself a
formula. Thus, the mode of a terms object is different as well.
Examples of the specials
argument can be seen in the
aov
and coxph
functions.
terms
, formula
.
## use of specials (as used for gam() in packages mgcv and gam)
(tf <- terms(y ~ x + x:z + s(x), specials = "s"))
## Note that the "factors" attribute has variables as row names
## and term labels as column names, both as character vectors.
attr(tf, "specials") # index 's' variable(s)
rownames(attr(tf, "factors"))[attr(tf, "specials")$s]
## we can keep the order by
terms(y ~ x + x:z + s(x), specials = "s", keep.order = TRUE)