sridge: Robust and Sparse Estimators for Linear Regression Models In esmucler/mmlasso: Robust and Sparse Estimators for Linear Regression Models

Description

Function to calculate the S-Ridge estimator of Maronna (2011), adapted from Maronna's original MATLAB code. It is not intended to be used on its own, but rather as an initial estimator for the MM-Lasso.

Usage

 ```1 2``` ```sridge(x,y,cualcv.S=5,numlam.S=30,niter.S=50,normin=0, denormout=0,alone=0,ncores=1) ```

Arguments

 `x` A matrix of carriers. Intercept is added automatically. `y` A vector of response variables. `cualcv.S` A natural number greater than 2. Method for estimating prediction error of S-Ridge: cualcv-fold cross validation. Default is 5. `numlam.S` Number of candidate penalization parameter values for S-Ridge. Default is 30. `niter.S` Maximum number of iterations of IWLS for S-Ridge. Default is 50. `normin` Center and scale input data? 0=no, default ; 1=yes. `denormout` Return final estimate in the original coordinates? 0=no, default ; 1=yes. `alone` Are you calculating the estimator for its sake only? 0=no, default ; 1=yes. `ncores` Number of cores to use for parallel computations. Default is one core.

Value

 `coef` S-Ridge estimate. First coordinate is the intercept. `scale` M-estimate of scale of the residuals of the final regression estimate. `edf` Final equivalent degrees of freedom. `lamda` Optimal lambda. `delta` Optimal delta.

Author(s)

Ezequiel Smucler, ezequiels.90@gmail.com.

Ricardo Maronna.

References

Ezequiel Smucler and Victor J. Yohai. Robust and sparse estimators for linear regression models (2015). Available at http://arxiv.org/abs/1508.01967.

Maronna, R.A. (2011). Robust Ridge Regression for High-Dimensional Data. Technometrics 53 44-53.

Examples

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20``` ```require(MASS) p <- 8 n <- 60 rho <- 0.5 desv <- 1 beta.true <- c(rep(0,p+1)) beta.true[2] <- 3 beta.true[3] <- 1.5 beta.true[7] <- 2 mu <- rep(0,p) sigma <- rho^t(sapply(1:p, function(i, j) abs(i-j), 1:p)) set.seed(1234) x <- mvrnorm(n,mu,sigma) u <- rnorm(n)*desv y <- x%*%beta.true[2:(p+1)]+beta.true[1]+u ###Calculate estimators set.seed(1234) SRidge <- sridge(x,y,normin=1,denormout=1,alone=1) ```

esmucler/mmlasso documentation built on May 16, 2019, 8:52 a.m.