Quantile Regresion with Group Penalty using linear programming algorithm

Share:

Description

Linear programming implementation of quantile regression with a group penalty.

Usage

1
2
3
rq.group.lin.prog(x,y,groups,tau,lambda,intercept=TRUE,eps=1e-05,
     penalty="SCAD", a=3.7, coef.cutoff=1e-08, initial_beta=NULL,
     iterations=10,converge_criteria=.0001,...)

Arguments

x

Matrix of predictors.

y

Vector of response values.

groups

Vector assigning columns of x to groups.

tau

Conditional quantile being modelled.

lambda

Vector of lambdas. Default is for lambdas to be automatically generated.

intercept

Whether model should include an intercept. Constant does not need to be included in "x".

eps

Multiplier for smallest lambda.

penalty

Type of penalty: "LASSO", "SCAD" or "MCP".

a

Additional parameter for non-convex penalties.

coef.cutoff

Estimates below this value are set to zero.

initial_beta

Initial beta estimate.

iterations

Maximum number of iterations.

converge_criteria

Convergence criteria

...

Additional arguments to be sent to rq.lasso.fit.

Value

Returns the following:

coefficients

Coefficients of the model.

residuals

Residuals from the fitted model.

rho

Unpenalized portion of the objective function.

tau

Quantile being modelled.

n

Sample size.

intercept

Whether intercept was included in model.

penalty

Penalty used for fitting the model.

class

rqPen and rqNC

Author(s)

Ben Sherwood

Examples

1
2
3
4
5
6
7
                           
## Not run: 
x <- matrix(rnorm(800),nrow=100)
y <- 1 + x[,1] - 3*x[,5] + rnorm(100)
cv_model <- rq.group.lin.prog(x,y,groups=c(rep(1,4),rep(2,4)), tau=.5, lambda=1)

## End(Not run)

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.