model.list
are typically produced as a
side-effect of the model-fitting process in
,
and
.
They exist somewhere between the data contained in a
object and the actual fitted model object.
This class of objects is returned from fitting routines by specifying
method=model.list
in the calling sequence.
The following generic functions have methods for
model.list
:
,
,
.
The class
model.list
inherits from
.
"data"
component
containing the data to be fit;
a
"formula"
component containing the model formula; a
"call"
component containing the call generating the model list; and a
"fit"
component containing other data needed to perform the fit.
The components differ
from one modeling function to another, but an important common
sub-component of
"fit"
is
"fitexpr"
, which contains the expression to
actually compute the fit of the data contained in the model list.
See the default method for a given modeling function to see the exact
structure of the
"fit"
component.
The
"data"
component of a model list typically contains
sub-components such as
The
"data"
component is further described below.
The
model.list
object was
created to support resampling functions such as
,
which may call model fitting routines such as
thousands of times. The
construction of a fitted model object from scratch follows three basic
steps: constructing the model frame from the data; extracting the
relevant pieces from the model frame; and performing the
fit. The first two steps are redundant from the point of view of
resampling. Therefore the data from the second step, along with
other parameters and expressions needed to perform the fit, has been
organized into the
model.list
object. During resampling, the
model.list
is created once, then repeatedly resampled and fit using
model.list
methods for fitting routines (
,
for example).
A model list can be returned by fitting routines (without fitting) via
the
method
argument.
The
"data"
component of a
model.list
object
contains those data that are expected to be sampled with
replacement by the resampling functions. All other
non-sample-specific data should be in component
"fit"
. This
principle, which one should keep in mind when designing
model lists for other modeling functions, is born out in the
subscripting method for model.lists:
the result of, for example
ml[rind,]
, where
ml
is a model.list and
rind
a set of indices, is a model.list whose data component contains
the
rind
selected rows of the original data components, and whose
other components are unchanged.