Convert a mars object from the mda package to an earth object
mars.to.earth(object, trace=TRUE)
object |
A |
trace |
If |
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.
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.
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) }
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.