[RsR] plugins for lmrob()
Martin Maechler
m@ech|er @end|ng |rom @t@t@m@th@ethz@ch
Tue May 9 12:39:45 CEST 2006
Thank you, Andreas (and Werner),
for your valuable feedback.
>>>>> "ARu" == Ruckstuhl Andreas \(rks\) <Ruckstuhl>
>>>>> on Wed, 3 May 2006 16:38:28 +0200 writes:
ARu> Regarding the "plugging" of new methods I would like to
ARu> see something like this (example for method "MM"):
ARu> On a first level, there is the method "MM", hence
ARu> lmrob(*, method = lmrob.fit.MM) ## where lmrob.fit.MM is an R function
ARu> On a second level, there may be different ways to
ARu> generate the initial S estimator, hence
ARu> lmrob(*, method = lmrob.fit.MM, initial=lmrob.fit.Sfast),
ARu> where lmrob.fit.Sfast() (or maybe lmrob.fit.MM.Sfast())
ARu> calculates the initial values. There is an open issue
ARu> however, whether the argument "initial" should not be
ARu> better part of the argument "control" like
ARu> lmrob(*, method = lmrob.fit.MM, control=lmrob.MM.control(initial=lmrob.fit.Sfast))
ARu> (I think, it is sensible that the control function
ARu> depends on the method.)
Indeed. After seeing your proposal, and more thinking I'm tending to
the conclusion that it would probably be best to *only* allow
method = <R-function_with_specific_properties>
Of course, all the function to be used as 'method' argument for
lmrob() must have
1) arguments x : ~= model.matrix(...)
y : target variable
{BTW: We should allow *multi*variate
'y' eventually, the same as lm() does!}
... : all (?) further arguments coming from a function-specific
<foo.bar>.control(..) function call
2) return value: a list(.) with a few well specified components,
such as
coefficients, scale, cov,
weights, residuals, fitted.values,
seed, converged, rank, ...
ARu> There should be a separate method for regression
ARu> M-estimators (e.g., lmrob.fit.M()) since this method is
ARu> still the adequate for the analysis of fixed effects
ARu> models.
Yes, or needed as building block (i.e. a
"sub - method") for the even more important case of a mixture of
categorical and continuous predictors.
ARu> The function lmrob.fit.M() may even include
ARu> bounded influence regression estimators.
Indeed; also if only for comparison with these once famous
"optimal" methods.
Now just someone has to do this...
Martin
More information about the R-SIG-Robust
mailing list