This function performs iterative improvements for S- or M-estimators.
refine.sm(x, y, initial.beta, initial.scale, k = 50, conv = 1, b, cc,
family, step = "M")
design matrix
vector of responses
vector of initial regression estimates
initial residual scale estimate. If missing the (scaled) median of the absolute residuals is used.
maximum number of refining steps to be performed
an integer indicating whether to check for convergence (1) at each step, or to force running k steps (0)
tuning constant for the M-scale estimator, used if iterations are for an S-estimator.
tuning constant for the rho function.
string specifying the name of the family of loss function to be used (current valid options are "bisquare", "optimal" and "modopt")
a string indicating whether the iterations are to compute an S-estiamator ('S') or an M-estimator ('M')
A list with the following components:
The updated vector of regression coefficients
The corresponding estimated residual scale
A logical value indicating whether the algorithm converged
This function performs iterative improvements for S- or M-estimators. Both iterations are formally the same, the only difference is that for M-iterations the residual scale estimate remains fixed, while for S-iterations it is updated at each step. In this case, we follow the Fast-S algorithm of Salibian-Barrera and Yohai an use one step updates for the M-scale, as opposed to a full computation. This as internal function.