terms.object package:stats R Documentation _D_e_s_c_r_i_p_t_i_o_n _o_f _T_e_r_m_s _O_b_j_e_c_t_s _D_e_s_c_r_i_p_t_i_o_n: 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. _V_a_l_u_e: 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 'numeric(0)'. 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 'keep.order' was false). variables: A call to 'list' of the variables in the model. 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 'term.labels' indicating the order of interaction for each term. 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 'offset' terms there is an 'offset' attribute indicating which variable(s) are offsets specials: If a 'specials' argument was given to 'terms.formula' there is a 'specials' attribute, a list of vectors (one for each specified special function) giving numeric indices of the arguments of the list returned as the 'variables' attribute which contain these special functions. dataClasses: optional. A named character vector giving the classes (as given by '.MFclass') of the variables used in a fit. The object has class 'c("terms", "formula")'. _N_o_t_e: 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. _S_e_e _A_l_s_o: 'terms', 'formula'. _E_x_a_m_p_l_e_s: ## 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)