[BioC] compare function in CMA package
Javier Pérez Florido
jpflorido at gmail.com
Tue Jan 19 10:36:08 CET 2010
Dear list,
According to the example given in "compare" help page for CMA package,
I've executed the following code:
### compare the performance of several discriminant analysis methods
### for the Khan dataset:
data(khan)
khanX <- as.matrix(khan[,-1])
khanY <- khan[,1]
set.seed(27611)
fiveCV10iter <- GenerateLearningsets(y=khanY, method = "CV", fold =
5, niter = 2, strat = TRUE)
### candidate methods: DLDA, LDA, QDA, pls_LDA, sclda
class_dlda <- classification(X = khanX, y=khanY, learningsets =
fiveCV10iter, classifier = dldaCMA)
### peform GeneSlection for LDA, FDA, QDA (using F-Tests):
genesel_da <- GeneSelection(X=khanX, y=khanY, learningsets =
fiveCV10iter, method = "f.test")
###
class_lda <- classification(X = khanX, y=khanY, learningsets =
fiveCV10iter, classifier = ldaCMA, genesel= genesel_da, nbgene = 10)
class_qda <- classification(X = khanX, y=khanY, learningsets =
fiveCV10iter, classifier = qdaCMA, genesel = genesel_da, nbgene = 2)
### We now make a comparison concerning the performance (sev.
measures):
### first, collect in a list:
dalike <- list(class_dlda, class_lda, class_qda)
### use pre-defined compare function:
comparison <- compare(dalike, plot = TRUE, measure =
c("misclassification", "brier score", "average probability"))
print(comparison)
## End(Not run)
Everyhing is OK. However, if I add a new classification method using SVM
like this:
class_svm<- classification(X = khanX, y=khanY, learningsets =
fiveCV10iter, classifier = svmCMA, genesel = genesel_da, nbgene =
2,kernel="radial")
classifierlist <- list(class_dlda, class_lda, class_qda, class_svm)
par(mfrow = c(4, 1))
comparison <- compare(classifierlist, plot = TRUE, measure =
c("misclassification", "brier score", "average probability"))
I got the following error in compare function:
Error in `contrasts<-`(`*tmp*`, value = "contr.treatment") :
contrasts can be applied only to factors with 2 or more levels
Any tips?
Thanks in advance,
Javier
> sessionInfo()
R version 2.10.0 (2009-10-26)
i386-pc-mingw32
locale:
[1] LC_COLLATE=Spanish_Spain.1252 LC_CTYPE=Spanish_Spain.1252
[3] LC_MONETARY=Spanish_Spain.1252 LC_NUMERIC=C
[5] LC_TIME=Spanish_Spain.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] MASS_7.3-3 class_7.3-1 CMA_1.4.1 Biobase_2.6.0 e1071_1.5-20
loaded via a namespace (and not attached):
[1] tools_2.10.0
More information about the Bioconductor
mailing list