R: Least Absolute Residuals / L1 Regression

lmrob.lar {robustbase} | R Documentation

## 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()`)

### 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`.

### 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`.

### Author(s)

Manuel Koller

### 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

    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.
    ))

[Package robustbase version 0.93-6 Index]