robreg.evol {RFreak} | R Documentation |
Carries out robust regression with an evolutionary algorithm. ltsreg
, ltareg
, lmsreg
, lqsreg
, and lqdreg
are wrappers.
robreg.evol(x, y, method = c("lts", "lta", "lms", "lqs", "lqd"), quantile=NULL, adjust=FALSE, runs=1, generations=10000, duration=0) ## Wrappers: ltsreg.evol(...) ltareg.evol(...) lmsreg.evol(...) lqsreg.evol(...) lqdreg.evol(...)
x |
Matrix or data frame containing the explanatory variables |
y |
Vector with the response variables |
method |
The method to be used. One of "lts", "lta", "lms", "lqs", and "lqd". |
quantile |
The quantile to be used: see Details . |
adjust |
Whether to perform intercept adjustment at each step |
runs |
Number of independent runs |
generations |
Number of generations after which the algorithm will be stopped |
duration |
Duration in seconds after which the algorithm will be stopped |
... |
Arguments to be passed to the default method |
Suppose there are n
data points and p
regressors,
including any intercept.
The first four methods minimize some function of the sorted squared
residuals. For methods "lqs"
and "lms"
it is the
quantile
squared residual, and for "lts"
("lts"
) it is the sum
of the quantile
smallest squared (absolute) residuals. "lqd"
minimizes the $h choose 2$ smallest of the $n choose 2$ absolute residual differences.
The function robreg.evol
returns an object of class "evolreg". This object contains:
summary |
Summary of the FrEAK run |
best |
The best subset found |
coefficients |
Vector of coefficient estimates |
crit |
The value of the objective function of the regression method |
Robin Nunkesser Robin.Nunkesser@tu-dortmund.de
O. Morell, T. Bernholt, R. Fried, J. Kunert, and R. Nunkesser (2008). An Evolutionary Algorithm for LTS-Regression: A Comparative Study. Proceedings of COMPSTAT 2008. To Appear.
P. J. Rousseeuw (1984), Least Median of Squares Regression. Journal of the American Statistical Association 79, 871–881.
"evolreg"
# load example data data(stackloss) # compute different regressions robreg.evol(stackloss[, 1:3], stackloss[, 4], method= "lts", generations=1000) lqsreg.evol(stackloss[, 1:3], stackloss[, 4], generations=1000) lqdreg.evol(stackloss[, 1:3], stackloss[, 4], generations=1000)