Learn R Programming

CDLasso (version 1.1)

l2.reg: Cyclic Coordinate Descent for L2 regression

Description

Cyclic Coordinate Descent for L2 regression with p predictors and n cases

Usage

l2.reg(X, Y, lambda = 1)

Arguments

X
p x n design matrix - Note that the rows of X correspond to predictors and the columns to cases.
Y
Outcome of length n
lambda
Penalization Parameter. For optimal lambda, use cv.l2.reg.

Value

X
The design matrix.
cases
The number of cases
predictors
The number of predictors
lambda
The value of penalization parameter lambda used.
residual
A vector of length p listing the residuals
L2
The sum of the residuals
estimate
The estimate of the coefficients
nonzeros
The number "selected" variables included in the model.
selected
The name of the "selected" variables included in the model.

Details

l2.reg performs an algorithm for estimating regression coefficients in a penalized L2 regression model. The algorithm is based on cyclic coordinate descent. For the new L1 algorithm that is faster, see (l1.reg).

References

Wu, T.T. and Lange, K. (2008). Coordinate Descent Algorithms for Lasso Penalized Regression. Annals of Applied Statistics, Volume 2, No 1, 224-244.

See Also

print.l2.reg

summary.l2.reg

cv.l2.reg

plot.cv.l2.reg

l1.reg

Examples

Run this code
set.seed(100)
n=500
p=2000
nzfixed = c(1:5)
true.beta<-rep(0,p)
true.beta[nzfixed] = c(1,1,1,1,1)

x=matrix(rnorm(n*p),p,n)
y = t(x) %*% true.beta

rownames(x)<-1:nrow(x)
colnames(x)<-1:ncol(x)

#Lasso penalized L2 regression
out<-l2.reg(x,y,lambda=2)

#Re-estimate parameters without penalization
out2<-l2.reg(x[out$selected,],y,lambda=0)
out2

Run the code above in your browser using DataLab