IRWLS iterations for S- or M-estimators
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")
x |
design matrix |
y |
vector of responses |
initial.beta |
vector of initial regression estimates |
initial.scale |
initial residual scale estimate. If missing the (scaled) median of the absolute residuals is used. |
k |
maximum number of refining steps to be performed |
conv |
an integer indicating whether to check for convergence (1) at each step, or to force running k steps (0) |
b |
tuning constant for the M-scale estimator, used if iterations are for an S-estimator. |
cc |
tuning constant for the rho function. |
family |
string specifying the name of the family of loss function to be used (current valid options are "bisquare", "opt" and "mopt") |
step |
a string indicating whether the iterations are to compute an S-estiamator ('S') or an M-estimator ('M') |
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.
A list with the following components:
beta.rw |
The updated vector of regression coefficients |
scale.rw |
The corresponding estimated residual scale |
converged |
A logical value indicating whether the algorithm converged |
Matias Salibian-Barrera, matias@stat.ubc.ca.
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.