robustbase (version 0.93-6)

lmrob.lar: Least Absolute Residuals / L1 Regression

Description

To compute least absolute residuals (LAR) or “L1” regression, lmrob.lar implements the routine L1 in Barrodale and Roberts (1974), which is based on the simplex method of linear programming. It is a copy of lmRob.lar (in early 2012) from the robust package.

Usage

lmrob.lar(x, y, control, …)

Arguments

x

numeric matrix for the predictors.

y

numeric vector for the response.

control

list as returned by lmrob.control() .

(unused but needed when called as init(x,y,ctrl, mf) from lmrob())

Value

A list that includes the following components:

coef

The L1-estimate of the coefficient vector

scale

The residual scale estimate (mad)

resid

The residuals

iter

The number of iterations required by the simplex algorithm

status

Return status (0: optimal, but non unique solution, 1: optimal unique solution)

converged

Convergence status (always TRUE), needed for lmrob.fit.

Details

This method is used for computing the M-S estimate and typically not to be used on its own.

A description of the Fortran subroutines used can be found in Marazzi (1993). In the book, the main method is named RILARS.

References

Marazzi, A. (1993). Algorithms, routines, and S functions for robust statistics. Wadsworth & Brooks/Cole, Pacific Grove, CA.

See Also

rq from package quantreg.

Examples

Run this code
# NOT RUN {
data(stackloss)
X <- model.matrix(stack.loss ~ . , data = stackloss)
y <- stack.loss
(fm.L1 <- lmrob.lar(X, y))
with(fm.L1, stopifnot(converged
  , status == 1L
  , all.equal(scale, 1.5291576438)
  , sum(abs(residuals) < 1e-15) == 4 # p=4 exactly fitted obs.
))
# }

Run the code above in your browser using DataCamp Workspace