R: Convert a mars object from the mda package to an earth object
mars.to.earth
R Documentation
Convert a mars object from the mda package to an earth object
Description
Convert a mars object from the mda package to an earth object
Usage
mars.to.earth(object, trace=TRUE)
Arguments
object
A mars object, created using mars in the mda package.
trace
If TRUE (default) print a summary of the conversion.
Value
The value is the same format as that returned by earth but
with skeletal versions of rss.per.subset,
gcv.per.subset, and prune.terms.
You can fully initialize these components by calling update.earth
after mars.to.earth, but if you do this selected.terms may change.
However with pmethod="backward" a change is unlikely —
selected.terms would change only if GCVs are so close that numerical errors
have an effect.
Note
Differences between mars and earth objects
Perhaps the most notable difference between
mars and earth objects is that mars returns the
MARS basis matrix in a field called "x"
whereas earth returns "bx" with only the selected terms.
Also, earth returns "dirs" rather than "factors",
and in earth this matrix can have entries of value 2 for linear predictors.
For details of other differences between mars and earth objects,
see the comments in the source code of mars.to.earth.
Weights
The w argument is silently ignored by mars.
mars normalizes wp to (euclidean) length 1;
earth normalizes
wp to length equal to the number of responses, i.e., the number
of columns in y. This change was made so an all ones wp
(or in fact any all constant wp) is equivalent to using no wp.
If the original call to mars used the wp argument,
mars.to.earth will run update.earth to force consistency.
This could modify the model, so a warning is issued.
See Also
earth,
mars
Examples
if(require(mda)) {
mars.mod <- mars(trees[,-3], trees[,3])
earth.mod <- mars.to.earth(mars.mod)
# the standard earth functions can now be used
# note the reconstructed call in the summary
summary(earth.mod, digits = 2)
}