The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
High-dimensional data are often affected by cellwise contamination: individual cells of the predictor matrix deviate from the underlying structure without necessarily making the whole observation an outlier. Even a small fraction of contaminated cells can propagate across many observations, which is enough to mislead both classical variable selection methods and robust methods designed only for casewise (whole-observation) outliers.
srlars implements the Fast and Scalable
Cellwise-Robust Ensemble (FSCRE) algorithm: a competitive
ensemble of sparse sub-models built on a cellwise-robust foundation
(Detect Deviating Cells imputation and wrapping-based robust
correlations), constructed via a robust Least-Angle-Regression proposer
and a cross-validation arbiter, then refit with robust MM-estimators.
The method and its theoretical properties are described in:
Christidis, A., Pyneeandee, J., and Cohen Freue, G. (2026). Fast and Scalable Cellwise-Robust Ensembles for High-Dimensional Data. arXiv:2603.20940
cellWise::DDC() and correlations are estimated with
the wrapping transform, so estimation stays reliable when individual
cells (not whole rows) are contaminated.n_models sub-models compete for variables each round via
cross-validated predictive improvement, rather than being built
independently.max_share sets how many sub-models a given variable may
appear in, from fully disjoint sub-models (the default) to unrestricted
sharing.n_min
guarantees each sub-model reaches a minimum number of variables even
when the ensemble-wide stopping rule would otherwise cut it short.cv.srlars() chooses
max_share by cross-validation on held-out ensemble
prediction error, instead of comparing values by hand.You can install the stable version from CRAN:
install.packages("srlars", dependencies = TRUE)You can install the development version from GitHub:
library(devtools)
devtools::install_github("AnthonyChristidis/srlars")library(srlars)
# x, y: a (possibly cellwise-contaminated) high-dimensional training set
fit <- srlars(x, y,
n_models = 5, # ensemble size
x_preprocess = "ddc",
y_preprocess = "wrap",
cor_estimator = "wrap",
cv_fit = "huber",
cv_loss = "huber")
coef(fit) # ensemble-averaged coefficients
predict(fit, newx) # ensemble-averaged predictions
# Choose max_share automatically instead of setting it by hand:
cv_fit <- cv.srlars(x, y, n_models = 5)
coef(cv_fit) # coef()/predict() work directly on the cross-validated fitFor a complete walkthrough – simulating cellwise-contaminated data,
fitting srlars(), and comparing
max_share/n_min on the same dataset – see the
package vignette:
vignette("srlars", package = "srlars")This package is free and open source software, licensed under GPL (>= 2).
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.