fixModelMatrix {ffmanova} | R Documentation |
The function takes the factor matrix of the terms object corresponding
to a model formula and changes it so that model hierarchy is preserved
also for powers of terms (e.g., I(a^2)
).
fixModelMatrix(mOld)
mOld |
The factor matrix (i.e. the "factor" attribute) of a
terms object. |
The ordinary model handling functions in R do not treat powers of
terms (a^n) as being higher order terms (like interaction
terms). fixModelMatrix
takes the "factor"
attribute of
a terms object (usually created from a model formula) and changes it
such that power terms can be treated hierarchically just like
interaction terms.
The factor matrix has one row for each variable and one coloumn for
each term. Originally, an entry is 0 if the term does not contain
the variable. If it contains the variable, the entry is 1 if the
variable should be coded with contrasts, and 2 if it should be coded
with dummy variables. See terms.object
for details.
The changes performed by fixModelMatrix
are:
I(a^n)
, where a
is the name of a variable and n
is a positive integer, the element in the row corresponding to
a
is set to n. For instance, the entry of row D
and coloumn C:I(D^2)
is set to 2.
I(a^n)
are deleted.
Note that this changes the semantics of the factor matrix: 2
no longer means ‘code via dummy variables’.
A factor matrix.
Øyvind Langsrud and Bjørn-Helge Mevik
mt <- terms(y ~ a + b + a:b + a:c + I(a^2) + I(a^3) + I(a^2):b) print(mOld <- attr(mt, "factor")) fixModelMatrix(mOld)