Fits a quantile regression model with the LASSO penalty. Algorithm is similar to LASSO code presented in Koenker and Mizera (2014).
rq.lasso.fit(x,y,tau=.5,lambda=NULL,weights=NULL,
intercept=TRUE,coef.cutoff=.00000001,
method="br", penVars=NULL,scalex=TRUE, ...)
Returns the following:
Coefficients from the penalized model.
Penalized objective function value.
Residuals from the model.
Objective function evaluation without the penalty.
Conditional quantile being modelled.
Sample size.
Matrix of predictors.
Vector of response values.
Conditional quantile being modelled.
Tuning parameter.
Weights for the objective function.
Whether model should include an intercept. Constant does not need to be included in "x".
Coefficients below this value will be set to zero.
Use method "br" or "fn" as outlined in quantreg package. We have found "br" to be more stable for penalized regression problems.
Variables that should be penalized. With default value of NULL all variables are penalized.
If set to true the predictors will be scaled to have mean zero and standard deviation of one before fitting the model. The output returned will be on the original scale of the data.
Additional items to be sent to rq. Note this will have to be done carefully as rq is run on the augmented data to account for penalization and could provide strange results if this is not taken into account.
Ben Sherwood
[1] Koenker, R. and Mizera, I. (2014). Convex optimization in R. Journal of Statistical Software, 60, 1--23.
[2] Tibshirani, R. (1996). Regression shrinkage and selection via the lasso. Journal of the Royal Statistical Society. Series B, 58, 267--288.
[3] Wu, Y. and Liu, Y. (2009). Variable selection in quantile regression. Statistica Sinica, 19, 801--817.
x <- matrix(rnorm(800),nrow=100)
y <- 1 + x[,1] - 3*x[,5] + rnorm(100)
lassoModel <- rq.lasso.fit(x,y,lambda=1)
Run the code above in your browser using DataLab