adapt_cisl {adapt4pv}  R Documentation 
Compute the CISL procedure (see cisl
for more details) to determine
adaptive penalty weights, then run an adaptive lasso with this penalty weighting.
BIC is used for the adaptive lasso for variable selection.
Can deal with very large sparse data matrices.
Intended for binary reponse only (option family = "binomial"
is forced).
Depends on the glmnet
function from the package glmnet
.
adapt_cisl( x, y, cisl_nB = 100, cisl_dfmax = 50, cisl_nlambda = 250, cisl_ncore = 1, maxp = 50, path = TRUE, betaPos = TRUE, ... )
x 
Input matrix, of dimension nobs x nvars. Each row is an observation
vector. Can be in sparse matrix format (inherit from class

y 
Binary response variable, numeric. 
cisl_nB 

cisl_dfmax 

cisl_nlambda 

cisl_ncore 

maxp 
A limit on how many relaxed coefficients are allowed.
Default is 50, in 
path 
Since 
betaPos 
Should the covariates selected by the procedure be
positively associated with the outcome ? Default is 
... 
Other arguments that can be passed to 
The CISL procedure is first implemented with its default value except for
dfmax
and nlambda
through parameters cisl_dfmax
and
cisl_nlambda
.
In addition, the betaPos
parameter is set to FALSE in cisl
.
For each covariate i, cisl_nB
values of the CISL quantity τ_i
are estimated.
The adaptive weight for a given covariate i is defined by
w_i = 1 1/cisl_{nB} ∑_{b=1, .., cisl_{nB}} 1 [ τ^b_i >0 ]
If τ_i is the null vector, the associated adaptve weights in infinty.
If τ_i is always positive, rather than "forcing" the variable into
the model, we set the corresponding adaptive weight to 1/cisl_nB
.
An object with S3 class "adaptive"
.
aws 
Numeric vector of penalty weights derived from CISL. Length equal to nvars. 
criterion 
Character, indicates which criterion is used with the
adaptive lasso for variable selection. For 
beta 
Numeric vector of regression coefficients in the adaptive lasso.
If 
selected_variables 
Character vector, names of variable(s) selected
with this adaptive approach.
If 
Emeline Courtois
Maintainer: Emeline Courtois
emeline.courtois@inserm.fr
set.seed(15) drugs < matrix(rbinom(100*20, 1, 0.2), nrow = 100, ncol = 20) colnames(drugs) < paste0("drugs",1:ncol(drugs)) ae < rbinom(100, 1, 0.3) acisl < adapt_cisl(x = drugs, y = ae, cisl_nB = 50, maxp=10)