Learn R Programming

CMA (version 1.30.0)

qdaCMA: Quadratic Discriminant Analysis

Description

Performs a quadratic discriminant analysis under the assumption of a multivariate normal distribution in each classes without restriction concerning the covariance matrices. The function qda from the package MASS is called for computation. For S4 method information, see qdaCMA-methods.

Usage

qdaCMA(X, y, f, learnind,models=FALSE, ...)

Arguments

X
Gene expression data. Can be one of the following:
  • Amatrix. Rows correspond to observations, columns to variables.
  • Adata.frame, whenfisnotmissing (s. below).
  • An object of classExpressionSet.
y
Class labels. Can be one of the following:
  • Anumericvector.
  • Afactor.
  • AcharacterifXis anExpressionSetthat specifies the phenotype variable.
  • missing, ifXis adata.frameand a proper formulafis provided.
WARNING: The class labels will be re-coded to range from 0 to K-1, where K is the total number of different classes in the learning set.
f
A two-sided formula, if X is a data.frame. The left part correspond to class labels, the right to variables.
learnind
An index vector specifying the observations that belong to the learning set. May be missing; in that case, the learning set consists of all observations and predictions are made on the learning set.
models
a logical value indicating whether the model object shall be returned
...
Further arguments to be passed to qda from the package MASS

Value

References

McLachlan, G.J. (1992). Discriminant Analysis and Statistical Pattern Recognition. Wiley, New York

See Also

compBoostCMA, dldaCMA, ElasticNetCMA, fdaCMA, flexdaCMA, gbmCMA, knnCMA, ldaCMA, LassoCMA, nnetCMA, pknnCMA, plrCMA, pls_ldaCMA, pls_lrCMA, pls_rfCMA, pnnCMA, rfCMA, scdaCMA, shrinkldaCMA, svmCMA

Examples

Run this code
### load Golub AML/ALL data
data(golub)
### extract class labels
golubY <- golub[,1]
### extract gene expression from first 3 genes
golubX <- as.matrix(golub[,2:4])
### select learningset
ratio <- 2/3
set.seed(112)
learnind <- sample(length(golubY), size=floor(ratio*length(golubY)))
### run QDA
qdaresult <- qdaCMA(X=golubX, y=golubY, learnind=learnind)
### show results
show(qdaresult)
ftable(qdaresult)
plot(qdaresult)
### multiclass example:
### load Khan data
data(khan)
### extract class labels
khanY <- khan[,1]
### extract gene expression from first 4 genes
khanX <- as.matrix(khan[,2:5])
### select learningset
set.seed(111)
learnind <- sample(length(khanY), size=floor(ratio*length(khanY)))
### run QDA
qdaresult <- qdaCMA(X=khanX, y=khanY, learnind=learnind)
### show results
show(qdaresult)
ftable(qdaresult)
plot(qdaresult)

Run the code above in your browser using DataLab