Description Usage Arguments Value Author(s) References See Also Examples
Performs direct sparse discriminant analysis, with the optimal lambda chosen by cross validation. The function can perform prediction on test data as well.
1 2 |
x |
An n by p matrix containing the predictors. |
y |
An n-dimensional vector containing the class labels 1 and 2. |
x.test.matrix |
The predictors of a testing set. (Optional.) |
y.test |
The class labels of the testing set. (Required if x.test.matrix is supplied, but otherwise optional.) |
standardize |
A logic object indicating whether x.matrix should be standardized before performing DSDA. Default is FALSE. |
lambda.opt |
Should be either "min" or "max", specifying whether the smallest or the largest lambda with the smallest cross validation error should be used for the final classification rule. |
nfolds |
The number of folds to be used in cross validation. Default is 10. |
lambda |
A sequence of lambda's. |
alpha |
The elasticnet mixing parameter, the same as in glmnet. Default is alpha=1 so that the lasso penalty is used. |
eps |
Convergence threshold for coordinate descent, the same as in glmnet. Default is 1e-7. |
error |
Testing error if x.test.matrix is supplied. |
beta |
The coefficients of the classification rule corresponding to the optimal lambda chosen by cross validation. |
s |
The optimal lambda chosen by cross validation. |
Yuqing Pan, Qing Mai, Xin Zhang
Mai, Q., Zou, H. and Yuan, M., (2012), "A direct approach to sparse discriminant analysis in ultra-high dimensions." Biometrika, 99, 29-42.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | data(GDS1615) ##load the prostate data
x<-GDS1615$x
y<-GDS1615$y
x=x[which(y<3),]
y=y[which(y<3)]
n<-length(y) ##split the original dataset to a training set and a testing set
n.test<-round(n/3)
set.seed(20120822)
id<-sample(n,n.test,replace=FALSE)
x.train<-x[-id,]
x.test<-x[id,]
y.train<-y[-id]
y.test<-y[id]
set.seed(123)
##perform direct sparse discriminant analysis
obj<-dsda.all(x.train,y.train,x.test,y.test)
obj$error
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.