| VARselect {LINselect} | R Documentation | 
VARselect
Description
Estimation in the regression model : Y= X \beta + \sigma N(0,1)
Variable selection by choosing the best predictor among
predictors emanating 
 from different methods as lasso,
elastic-net, adaptive lasso, pls, randomForest.
Usage
VARselect(Y, X, dmax = NULL, normalize = TRUE, method = c("lasso", 
    "ridge", "pls", "en", "ALridge", "ALpls", "rF", "exhaustive"), 
    pen.crit = NULL, lasso.dmax = NULL, ridge.dmax = NULL, pls.dmax = NULL, 
    en.dmax = NULL, ALridge.dmax = NULL, ALpls.dmax = NULL, rF.dmax = NULL, 
    exhaustive.maxdim = 5e+05, exhaustive.dmax = NULL, en.lambda = c(0.01, 
        0.1, 0.5, 1, 2, 5), ridge.lambda = c(0.01, 0.1, 0.5, 
        1, 2, 5), rF.lmtry = 2, pls.ncomp = 5, ALridge.lambda = c(0.01, 
        0.1, 0.5, 1, 2, 5), ALpls.ncomp = 5, max.steps = NULL, 
    K = 1.1, verbose = TRUE, long.output = FALSE)Arguments
| Y | vector with n components : response variable. | 
| X | matrix with n rows and p columns : covariates. | 
| dmax | integer : maximum number of variables in the lasso
estimator.  | 
| normalize | logical : if TRUE the columns of X are scaled | 
| method | vector of characters  whose components are subset of  | 
| pen.crit | vector with  | 
| lasso.dmax | integer lower than  | 
| ridge.dmax | integer lower than  | 
| pls.dmax | integer lower than  | 
| en.dmax | integer lower than  | 
| ALridge.dmax | integer lower than  | 
| ALpls.dmax | integer lower than  | 
| rF.dmax | integer lower than  | 
| exhaustive.maxdim | integer : maximum number of subsets of covariates considered in the exhaustive method. See details. | 
| exhaustive.dmax | integer lower than  | 
| en.lambda | vector : tuning parameter of the
ridge. It is the input parameter  | 
| ridge.lambda | vector : tuning parameter of the
ridge. It is the input parameter lambda of function
 | 
| rF.lmtry | vector : tuning paramer  | 
| pls.ncomp | integer : tuning parameter of the pls. It is the
input parameter  | 
| ALridge.lambda | similar to
 | 
| ALpls.ncomp | similar to  | 
| max.steps | integer. Maximum number of steps in the lasso
procedure. Corresponds to the input  | 
| K | scalar : value of the parameter  | 
| verbose | logical : if TRUE a trace of the current process is displayed in real time. | 
| long.output | logical : if FALSE only the component summary will be returned. See Value. | 
Details
When method is pls or ALpls, the
LINselect procedure is carried out considering the number
of components in the pls method as the tuning
parameter. 
 This tuning parameter varies from 1 to pls.ncomp.
When method is exhaustive, the maximum
number of variate d is calculated as
follows.
Let q be the largest integer such that choose(p,q) <
exhaustive.maxdim. Then d = min(q, exhaustive.dmax,dmax).
Value
A list with at least length(method)
components. 
 
For each procedure in method  a list with components 
- support: vector of integers. Estimated support of the parameters- \betafor the considered procedure.
- crit: scalar equals to the LINselect criteria calculated in the estimated support.
- fitted: vector with length n. Fitted value of the response calculated when the support of- \betaequals- support.
- coef: vector whose first component is the estimated intercept.
 The other components are the estimated non zero coefficients when the support of- \betaequals- support.
If length(method) > 1, the additional component summary is a list with three
components:
- support: vector of integers. Estimated support of the parameters- \betacorresponding to the minimum of the criteria among all procedures.
- crit: scalar. Minimum value of the criteria among all procedures.
- method: vector of characters. Names of the procedures for which the minimum is reached
If pen.crit = NULL, the component pen.crit gives the
values of the penalty calculated by the function penalty.
If long.output is TRUE the component named
chatty is a list  with length(method)
components. 
 
For each procedure in method, a list with components
- supportwhere- support[[l]]is a vector of integers containing an estimator of the support of the parameters- \beta.
- crit: vector where- crit[l]contains the value of the LINselect criteria calculated in- support[[l]].
Note
When method is lasso, library elasticnet is loaded.
When method is en, library elasticnet is loaded.
When method is ridge, library MASS is loaded.
When method is rF, library randomForest is loaded.
When method is pls, library pls is loaded.
When method is ALridge, libraries MASS and elasticnet are loaded.
When method is ALpls, libraries pls and elasticnet are loaded.
When method is exhaustive, library gtools
is loaded.
Author(s)
Yannick Baraud, Christophe Giraud, Sylvie Huet
References
See Baraud  et al. 2010 
http://hal.archives-ouvertes.fr/hal-00502156/fr/ 
Giraud et al., 2013,
https://projecteuclid.org/DPubS?service=UI&version=1.0&verb=Display&handle=euclid.ss/1356098553
Examples
#source("charge.R")
library("LINselect")
# simulate data with
# beta=c(rep(2.5,5),rep(1.5,5),rep(0.5,5),rep(0,p-15))
ex <- simulData(p=100,n=100,r=0.8,rSN=5)
## Not run: ex1.VARselect <- VARselect(ex$Y,ex$X,exhaustive.dmax=2)
## Not run: data(diabetes)
## Not run: attach(diabetes)
## Not run: ex.diab <- VARselect(y,x2,exhaustive.dmax=5)
## Not run: detach(diabetes)