Training and Testing sets
par(op)
trainSamples <- sample(nrow(Sonar),0.70*nrow(Sonar))
traningSet <- Sonar[trainSamples,];
testingSet <- Sonar[-trainSamples,];
traningSetc <- traningSet
traningSetc$Class <- as.factor(traningSetc$Class)
vartoAdjust <- !(colnames(testingSet) %in% c("Class"))
cmrmat <- abs(cor(traningSet[,vartoAdjust] ,method="spearman"))
diag(cmrmat) <- 0;
gplots::heatmap.2(cmrmat,trace = "none",mar = c(10,10),col=rev(heat.colors(5)),main = "Raw Correlation",cexRow = 0.5,cexCol = 0.5,key.xlab="Spearman Correlation",xlab="Feature", ylab="Feature")

dataTrainDecorrelated <- featureDecorrelation(traningSet,outcome="Class",method="LOESS",thr=0.80,degre=2,span=1.0,family="symmetric")
dataTestDecorrelated <- featureDecorrelation(testingSet,outcome="Class",refdata=traningSet,method="LOESS",thr=0.80,degre=2,span=1.0,family="symmetric")
dataTrainDecorrelatedc <- dataTrainDecorrelated
dataTrainDecorrelatedc$Class <- as.factor(dataTrainDecorrelatedc$Class)
cmrmat2 <- abs(cor(dataTrainDecorrelated[,vartoAdjust] ,method="spearman"))
diag(cmrmat2) <- 0;
gplots::heatmap.2(cmrmat2,trace = "none",mar = c(10,10),col=rev(heat.colors(5)),main = "Decorrelation",cexRow = 0.5,cexCol = 0.5,key.xlab="Spearman Correlation",xlab="Feature", ylab="Feature")

ML-Methods in FRESA.CAD
par(mfrow = c(2,2),cex = 0.5);
BSWiMS_ml <- BSWiMS.model(Class~.,traningSet,NumberofRepeats = 5)
bsBSWiMS <- predictionStats_binary(cbind(testingSet$Class,predict(BSWiMS_ml,testingSet)),"BSWiMS",cex = 0.7)
sm <- summary(BSWiMS_ml)
cf <- sm$coefficients
eBSWiMS_ml <- BSWiMS.model(Class~.,traningSet,NumberofRepeats = -5)
bseBSWiMS <- predictionStats_binary(cbind(testingSet$Class,predict(eBSWiMS_ml,testingSet)),"eBSWiMS",cex = 0.7)
KNN_method_ml <- KNN_method(Class~.,traningSet)
bsKNN_method <- predictionStats_binary(cbind(testingSet$Class,predict(KNN_method_ml,testingSet)),"KNN",cex = 0.7)
RAWNB_ml <- try(NAIVE_BAYES(Class~.,traningSet,pca=FALSE))
print(class(RAWNB_ml))
if (inherits(RAWNB_ml, "try-error"))
{
cat("Error I'll use without Kernel\n")
RAWNB_ml <- try(NAIVE_BAYES(Class~.,traningSet,pca=FALSE,usekernel=FALSE))
bsRAWNB <- predictionStats_binary(cbind(testingSet$Class,predict(RAWNB_ml,testingSet)),"NB:RAW",cex = 0.7)
} else
{
bsRAWNB <- predictionStats_binary(cbind(testingSet$Class,predict(RAWNB_ml,testingSet)),"NB:RAW",cex = 0.7)
}

PCANB_ml <- NAIVE_BAYES(Class~.,traningSet,pca=TRUE)
bsPCANB <- predictionStats_binary(cbind(testingSet$Class,predict(PCANB_ml,testingSet)),"NB:PCA",cex = 0.7)
FilteredPCANB_ml <- filteredFit(Class~.,traningSet,fitmethod=NAIVE_BAYES)
bsFilteredPCANB <- predictionStats_binary(cbind(testingSet$Class,predict(FilteredPCANB_ml,testingSet)),"Filtered:NB:PCA",cex = 0.7)
BESS_ml <- try(BESS(Class~.,traningSet))
bsBESS <- predictionStats_binary(cbind(testingSet$Class,predict(BESS_ml,testingSet)),"BESS",cex = 0.7)
BESS_GOLD_ml <- BESS(Class~.,traningSet,method="gsection")
bsBESS_GOLD <- predictionStats_binary(cbind(testingSet$Class,predict(BESS_GOLD_ml,testingSet)),"BESS: Golden",cex = 0.7)

SignatureRSS_ml <- CVsignature(Class~.,traningSet,method = "RSS")
bsSignatureRSS <- predictionStats_binary(cbind(testingSet$Class,predict(SignatureRSS_ml,testingSet)),"Signature: RSS",cex = 0.7)
SignatureNB_ml <- CVsignature(Class~.,traningSet,method = "NB")
bsSignatureNB <- predictionStats_binary(cbind(testingSet$Class,predict(SignatureNB_ml,testingSet)),"Signature: NB",cex = 0.7)
#pr <- predict(SignatureRSS_ml,testingSet)
#barplot(SignatureRSS_ml$wts)
SignatureSpearman_ml <- CVsignature(Class~.,traningSet,method = "spearman")
bsSignatureSpearman <- predictionStats_binary(cbind(testingSet$Class,predict(SignatureSpearman_ml,testingSet)),"Signature: spearman",cex = 0.7)
SignatureMAN_ml <- CVsignature(Class~.,traningSet,method = "MAN")
bsSignatureMAN <- predictionStats_binary(cbind(testingSet$Class,predict(SignatureMAN_ml,testingSet)),"Signature: MAN",cex = 0.7)

SignaturePearson_ml <- CVsignature(Class~.,traningSet,method = "pearson")
bsSignaturePearson <- predictionStats_binary(cbind(testingSet$Class,predict(SignaturePearson_ml,testingSet)),"Signature: Pearson",cex = 0.7)
Signaturekendall_ml <- CVsignature(Class~.,traningSet,method = "kendall")
bsSignaturekendall <- predictionStats_binary(cbind(testingSet$Class,predict(Signaturekendall_ml,testingSet)),"Signature: Kendall",cex = 0.7)
LASSO1SE_ml <- LASSO_1SE(Class~.,traningSet,family = "binomial")
bsLASSO1SE <- predictionStats_binary(cbind(testingSet$Class,predict(LASSO1SE_ml,testingSet)),"LASSO: 1SE",cex = 0.7)
LASSOMIN_ml <- LASSO_MIN(Class~.,traningSet,family = "binomial")
bsLASSOMIN <- predictionStats_binary(cbind(testingSet$Class,predict(LASSOMIN_ml,testingSet)),"LASSO: MIN",cex = 0.7)

GLMNETRIDGE_MIN_ml <- GLMNET_RIDGE_MIN(Class~.,traningSet,family = "binomial")
bsRIDGE_MIN <- predictionStats_binary(cbind(testingSet$Class,predict(GLMNETRIDGE_MIN_ml,testingSet)),"GLMNET RIDGE",cex = 0.7)
ELASTICNET_ml <- GLMNET_ELASTICNET_MIN(Class~.,traningSet,family = "binomial")
bsELASTICNET <- predictionStats_binary(cbind(testingSet$Class,predict(ELASTICNET_ml,testingSet)),"ELASTICNET",cex = 0.7)
FilteredSVM_ml <- filteredFit(Class~.,traningSetc,fitmethod=e1071::svm,probability = TRUE)
bsFilteredSVM <- predictionStats_binary(cbind(testingSet$Class,predict(FilteredSVM_ml,testingSet)),"Filtered:SVM",cex = 0.7)
TUNED_SVM_ml <- TUNED_SVM(Class~.,traningSetc,probability = TRUE,gamma = 10^(-5:-1), cost = 10^(-3:1))
bsTUNED_SVM <- predictionStats_binary(cbind(testingSet$Class,predict(TUNED_SVM_ml,testingSet)),"TUNED_SVM",cex = 0.7)

HLCM_ml <- HLCM(Class~.,traningSet,NumberofRepeats = 5)
bsHLCM <- predictionStats_binary(cbind(testingSet$Class,predict(HLCM_ml,testingSet)),"Lattent class: BSWiMS",cex = 0.7)
HLCMNB_ml <- HLCM(Class~.,traningSet,classMethod=NAIVE_BAYES,NumberofRepeats = 5)
bsHLCMNB <- predictionStats_binary(cbind(testingSet$Class,predict(HLCMNB_ml,testingSet)),"Latent class: NB:BSWiMS",cex = 0.7)
HLCM_EM_ml <- HLCM_EM(Class~.,traningSet)
bsHLCM_EM <- predictionStats_binary(cbind(testingSet$Class,predict(HLCM_EM_ml,testingSet)),"Lattent class EM: BSWiMS",cex = 0.7)
HLCM_LASSO_ml <- HLCM_EM(Class~.,traningSet,method=LASSO_1SE,family = "binomial")
bsHLCM_LASSO <- predictionStats_binary(cbind(testingSet$Class,predict(HLCM_LASSO_ml,testingSet)),"Lattent class: LASSO",cex = 0.7)

GMVEBSWiMS_ml <- GMVEBSWiMS(Class~.,traningSet,pvalue=0.01)
bsGMVEBSWiMS <- predictionStats_binary(cbind(testingSet$Class,predict(GMVEBSWiMS_ml,testingSet)),"GMVE Cluster: BSWiMS",cex = 0.7)
ClustClassGMVE_ml <- ClustClass(Class~.,traningSet)
bsClustClassGMVE <- predictionStats_binary(cbind(testingSet$Class,predict(ClustClassGMVE_ml,testingSet)),
"ClustClass: GMVE",cex = 0.7)
ClustClass_ml <- ClustClass(Class~.,traningSet,clustermethod=Mclust,
clustermethod.control=list(G = 2))
bsClustClass <- predictionStats_binary(cbind(testingSet$Class,predict(ClustClass_ml,testingSet)),
"ClustClass: Mclust K =2",cex = 0.7)
par(mfrow = c(1,1),cex = 0.5);

Plotting the Holdout Performance Statistics
berror <- bsBSWiMS$berror
berror <- rbind(berror,bseBSWiMS$berror)
berror <- rbind(berror,bsKNN_method$berror)
berror <- rbind(berror,bsRAWNB$berror)
berror <- rbind(berror,bsPCANB$berror)
berror <- rbind(berror,bsFilteredPCANB$berror)
berror <- rbind(berror,bsBESS$berror)
berror <- rbind(berror,bsBESS_GOLD$berror)
berror <- rbind(berror,bsSignatureRSS$berror)
berror <- rbind(berror,bsSignatureNB$berror)
berror <- rbind(berror,bsSignatureSpearman$berror)
berror <- rbind(berror,bsSignatureMAN$berror)
berror <- rbind(berror,bsSignaturePearson$berror)
berror <- rbind(berror,bsSignaturekendall$berror)
berror <- rbind(berror,bsLASSO1SE$berror)
berror <- rbind(berror,bsLASSOMIN$berror)
berror <- rbind(berror,bsRIDGE_MIN$berror)
berror <- rbind(berror,bsELASTICNET$berror)
berror <- rbind(berror,bsFilteredSVM$berror)
berror <- rbind(berror,bsTUNED_SVM$berror)
berror <- rbind(berror,bsHLCM$berror)
berror <- rbind(berror,bsHLCMNB$berror)
berror <- rbind(berror,bsHLCM_EM$berror)
berror <- rbind(berror,bsHLCM_LASSO$berror)
berror <- rbind(berror,bsGMVEBSWiMS$berror)
berror <- rbind(berror,bsClustClass$berror)
berror <- rbind(berror,bsClustClassGMVE$berror)
rownames(berror) <- c("BSWiMS","eBSWiMS","KNN_method","RAWNB","PCANB","FilteredPCANB","BESS","BESS_GOLD","SignatureRSS","SignatureNB","SignatureSpearman","SignatureMAN","SignaturePearson","Signaturekendall","LASSO1SE","LASSOMIN","RIDGE_MIN","ELASTICNET","FilteredSVM","TUNED_SVM","HLCM","HLCMNB","HLCM_EM","HLCM_LASSO","GMVEBSWiMS","ClustClass","ClustClassGMVE")
bpBER <- barPlotCiError(as.matrix(berror),
metricname = "Balanced Error",
thesets = "Hold-Out Error",
themethod = rownames(berror),
main = "Balanced Error",
offsets = c(0.5,1),
scoreDirection = "<",
ho=0.5,
args.legend = list(bg = "white",x="bottomright",inset=c(0.0,0),cex=0.5),
col = terrain.colors(nrow(berror))
)

aucs <- bsBSWiMS$aucs
aucs <- rbind(aucs,bseBSWiMS$aucs)
aucs <- rbind(aucs,bsKNN_method$aucs)
aucs <- rbind(aucs,bsRAWNB$aucs)
aucs <- rbind(aucs,bsPCANB$aucs)
aucs <- rbind(aucs,bsFilteredPCANB$aucs)
aucs <- rbind(aucs,bsBESS$aucs)
aucs <- rbind(aucs,bsBESS_GOLD$aucs)
aucs <- rbind(aucs,bsSignatureRSS$aucs)
aucs <- rbind(aucs,bsSignatureNB$aucs)
aucs <- rbind(aucs,bsSignatureSpearman$aucs)
aucs <- rbind(aucs,bsSignatureMAN$aucs)
aucs <- rbind(aucs,bsSignaturePearson$aucs)
aucs <- rbind(aucs,bsSignaturekendall$aucs)
aucs <- rbind(aucs,bsLASSO1SE$aucs)
aucs <- rbind(aucs,bsLASSOMIN$aucs)
aucs <- rbind(aucs,bsRIDGE_MIN$aucs)
aucs <- rbind(aucs,bsELASTICNET$aucs)
aucs <- rbind(aucs,bsFilteredSVM$aucs)
aucs <- rbind(aucs,bsTUNED_SVM$aucs)
aucs <- rbind(aucs,bsHLCM$aucs)
aucs <- rbind(aucs,bsHLCMNB$aucs)
aucs <- rbind(aucs,bsHLCM_EM$aucs)
aucs <- rbind(aucs,bsHLCM_LASSO$aucs)
aucs <- rbind(aucs,bsGMVEBSWiMS$aucs)
aucs <- rbind(aucs,bsClustClass$aucs)
aucs <- rbind(aucs,bsClustClassGMVE$aucs)
rownames(aucs) <- rownames(berror)
bpAUC <- barPlotCiError(as.matrix(aucs),
metricname = "ROC AUC",
thesets = "Hold-Out AUC",
themethod = rownames(aucs),
main = "AUC",
offsets = c(-0.5,1),
scoreDirection = ">",
ho=0.5,
args.legend = list(bg = "white",x="bottomleft",inset=c(0.0,0),cex=0.5),
col = terrain.colors(nrow(aucs))
)

accc <- bsBSWiMS$accc
accc <- rbind(accc,bseBSWiMS$accc)
accc <- rbind(accc,bsKNN_method$accc)
accc <- rbind(accc,bsRAWNB$accc)
accc <- rbind(accc,bsPCANB$accc)
accc <- rbind(accc,bsFilteredPCANB$accc)
accc <- rbind(accc,bsBESS$accc)
accc <- rbind(accc,bsBESS_GOLD$accc)
accc <- rbind(accc,bsSignatureRSS$accc)
accc <- rbind(accc,bsSignatureNB$accc)
accc <- rbind(accc,bsSignatureSpearman$accc)
accc <- rbind(accc,bsSignatureMAN$accc)
accc <- rbind(accc,bsSignaturePearson$accc)
accc <- rbind(accc,bsSignaturekendall$accc)
accc <- rbind(accc,bsLASSO1SE$accc)
accc <- rbind(accc,bsLASSOMIN$accc)
accc <- rbind(accc,bsRIDGE_MIN$accc)
accc <- rbind(accc,bsELASTICNET$accc)
accc <- rbind(accc,bsFilteredSVM$accc)
accc <- rbind(accc,bsTUNED_SVM$accc)
accc <- rbind(accc,bsHLCM$accc)
accc <- rbind(accc,bsHLCMNB$accc)
accc <- rbind(accc,bsHLCM_EM$accc)
accc <- rbind(accc,bsHLCM_LASSO$accc)
accc <- rbind(accc,bsGMVEBSWiMS$accc)
accc <- rbind(accc,bsClustClass$accc)
accc <- rbind(accc,bsClustClassGMVE$accc)
rownames(accc) <- rownames(berror)
bpaccc <- barPlotCiError(as.matrix(accc),
metricname = "Accuracy",
thesets = "Hold-Out Accuracy",
themethod = rownames(accc),
main = "Accuracy",
offsets = c(-0.5,1),
scoreDirection = ">",
ho=0.5,
args.legend = list(bg = "white",x="bottomleft",inset=c(0.0,0),cex=0.45),
col = terrain.colors(nrow(accc))
)

Filters
par(mfrow = c(2,2),cex = 0.5);
FilteredEnsemble_ml <- filteredFit(Class~.,
traningSet,
fitmethod=glm,
filtermethod=univariate_BinEnsemble,
filtermethod.control=list(pvalue=0.05,limit=0.25),
family = "binomial")
bsFilteredEnsemble <- predictionStats_binary(cbind(testingSet$Class,predict(FilteredEnsemble_ml,testingSet))
,"Ensemble:logit",cex = 0.7)
FilteredKS_ml <- filteredFit(Class~.,
traningSet,
fitmethod=glm,
filtermethod=univariate_KS,
filtermethod.control=list(pvalue=0.05,limit=0.25),
family = "binomial")
bsFilteredKS <- predictionStats_binary(cbind(testingSet$Class,predict(FilteredKS_ml,testingSet)),"KS:logit",cex = 0.7)
FilteredDTS_ml <- filteredFit(Class~.,
traningSet,
fitmethod=glm,
filtermethod=univariate_DTS,
filtermethod.control=list(pvalue=0.05,limit=0.25),
family = "binomial")
bsFilteredDTS <- predictionStats_binary(cbind(testingSet$Class,predict(FilteredDTS_ml,testingSet)),"DTS:logit",cex = 0.7)
FilteredWilcox_ml <- filteredFit(Class~.,
traningSetc,
fitmethod=glm,
filtermethod=univariate_Wilcoxon,
filtermethod.control=list(pvalue=0.05,limit=0.25),
family = "binomial")
bsFilteredWilcox <- predictionStats_binary(cbind(testingSet$Class,predict(FilteredWilcox_ml,testingSet))
,"Wilcox:logit",cex = 0.7)

Filteredttest_ml <- filteredFit(Class~.,traningSetc,
fitmethod=glm,
filtermethod=univariate_tstudent,
filtermethod.control=list(pvalue=0.05,limit=0.25),
family = "binomial")
bsFilteredttest <- predictionStats_binary(cbind(testingSet$Class,predict(Filteredttest_ml,testingSet))
,"t-test:logit",cex = 0.7)
Filteredkendall_ml <- filteredFit(Class~.,traningSet,
fitmethod=glm,
filtermethod=univariate_correlation,
filtermethod.control=list(pvalue=0.05,limit=0.25,method = "kendall"),
family = "binomial")
bsFilteredkendall <- predictionStats_binary(cbind(testingSet$Class,predict(Filteredkendall_ml,testingSet))
,"Kendall:logit",cex = 0.7)
Filteredspearman_ml <- filteredFit(Class~.,traningSet,
fitmethod=glm,
filtermethod=univariate_correlation,
filtermethod.control=list(pvalue=0.05,limit=0.25,method = "spearman"),
family = "binomial")
bsFilteredspearman <- predictionStats_binary(cbind(testingSet$Class,predict(Filteredspearman_ml,testingSet))
,"Spearman:logit",cex = 0.7)
Filteredpearson_ml <- filteredFit(Class~.,traningSet,
fitmethod=glm,
filtermethod=univariate_correlation,
filtermethod.control=list(pvalue=0.05,limit=0.25,method = "pearson"),
family = "binomial")
bsFilteredpearson <- predictionStats_binary(cbind(testingSet$Class,predict(Filteredpearson_ml,testingSet))
,"Pearson:logit",cex = 0.7)

FilteredFtest_ml <- filteredFit(Class~.,traningSet,
fitmethod=glm,
filtermethod=univariate_residual,
filtermethod.control=list(pvalue=0.05,limit=0.25,uniTest = "Ftest",type="LOGIT"),
family = "binomial")
bsFilteredFtest <- predictionStats_binary(cbind(testingSet$Class,predict(FilteredFtest_ml,testingSet))
,"Filter_F:logit",cex = 0.7)
FilteredBinomial_ml <- filteredFit(Class~.,traningSet,
fitmethod=glm,
filtermethod=univariate_residual,
filtermethod.control=list(pvalue=0.05,limit=0.25,uniTest = "Binomial",type="LOGIT"),
family = "binomial")
bsFilteredBinomial <- predictionStats_binary(cbind(testingSet$Class,predict(FilteredBinomial_ml,testingSet))
,"Filter_Bin:logit",cex = 0.7)
FilteredWilcox2_ml <- filteredFit(Class~.,traningSet,
fitmethod=glm,
filtermethod=univariate_residual,
filtermethod.control=list(pvalue=0.05,limit=0.25,uniTest = "Wilcox",type="LOGIT"),
family = "binomial")
bsFilteredWilcox2 <- predictionStats_binary(cbind(testingSet$Class,predict(FilteredWilcox2_ml,testingSet))
,"Filter_Wil:logit",cex = 0.7)
FilteredtStudent_ml <- filteredFit(Class~.,traningSet,
fitmethod=glm,
filtermethod=univariate_residual,
filtermethod.control=list(pvalue=0.05,limit=0.25,uniTest = "tStudent",type="LOGIT"),
family = "binomial")
bsFilteredtStudent <- predictionStats_binary(cbind(testingSet$Class,predict(FilteredtStudent_ml,testingSet))
,"Filter_tt:logit",cex = 0.7)

FilteredzIDI_ml <- filteredFit(Class~.,traningSet,
fitmethod=glm,
filtermethod=univariate_Logit,
filtermethod.control=list(pvalue=0.1,limit=0.25,uniTest = "zIDI"),
family = "binomial")
bsFilteredzIDI <- predictionStats_binary(cbind(testingSet$Class,predict(FilteredzIDI_ml,testingSet))
,"Filter_IDI:logit",cex = 0.7)
FilteredzNRI_ml <- filteredFit(Class~.,traningSet,
fitmethod=glm,
filtermethod=univariate_Logit,
filtermethod.control=list(pvalue=0.1,limit=0.25,uniTest = "zNRI"),
family = "binomial")
bsFilteredzNRI <- predictionStats_binary(cbind(testingSet$Class,predict(FilteredzNRI_ml,testingSet))
,"Filter_NRI:logit",cex = 0.7)
FilteredmRMR_ml <- filteredFit(Class~.,traningSet,
fitmethod=glm,
filtermethod=mRMR.classic_FRESA,
filtermethod.control=list(feature_count=as.integer(0.05*nrow(traningSet)+0.5)),
family = "binomial")
bsFilteredmRMR <- predictionStats_binary(cbind(testingSet$Class,predict(FilteredmRMR_ml,testingSet))
,"Filter_mRMR:logit",cex = 0.7)
par(mfrow = c(1,1),cex = 0.5)

Filters Decorrelated
par(mfrow = c(2,2),cex = 0.5);
FilteredEnsemble_ml <- filteredFit(Class~.,
dataTrainDecorrelated,
fitmethod=glm,
filtermethod=univariate_BinEnsemble,
filtermethod.control=list(pvalue=0.05,limit=0.25),
family = "binomial")
deBsFilteredEnsemble <- predictionStats_binary(cbind(dataTestDecorrelated$Class,predict(FilteredEnsemble_ml,dataTestDecorrelated)),"De: Ensemble:logit",cex = 0.7)
FilteredKS_ml <- filteredFit(Class~.,
dataTrainDecorrelated,
fitmethod=glm,
filtermethod=univariate_KS,
filtermethod.control=list(pvalue=0.05,limit=0.25),
family = "binomial")
deBsFilteredKS <- predictionStats_binary(cbind(dataTestDecorrelated$Class,predict(FilteredKS_ml,dataTestDecorrelated)),"De: KS:logit",cex = 0.7)
FilteredDTS_ml <- filteredFit(Class~.,
dataTrainDecorrelated,
fitmethod=glm,
filtermethod=univariate_DTS,
filtermethod.control=list(pvalue=0.05,limit=0.25),
family = "binomial")
deBsFilteredDTS <- predictionStats_binary(cbind(dataTestDecorrelated$Class,predict(FilteredDTS_ml,dataTestDecorrelated)),"De:DTS:logit",cex = 0.7)
FilteredWilcox_ml <- filteredFit(Class~.,
dataTrainDecorrelated,
fitmethod=glm,
filtermethod=univariate_Wilcoxon,
filtermethod.control=list(pvalue=0.05,limit=0.25),
family = "binomial")
deBsFilteredWilcox <- predictionStats_binary(cbind(dataTestDecorrelated$Class,predict(FilteredWilcox_ml,dataTestDecorrelated)),"De:Wilcox:logit",cex = 0.7)

Filteredttest_ml <- filteredFit(Class~.,dataTrainDecorrelated,
fitmethod=glm,
filtermethod=univariate_tstudent,
filtermethod.control=list(pvalue=0.05,limit=0.25),
family = "binomial")
deBsFilteredttest <- predictionStats_binary(cbind(dataTestDecorrelated$Class,predict(Filteredttest_ml,dataTestDecorrelated)),"De:t-test:logit",cex = 0.7)
Filteredkendall_ml <- filteredFit(Class~.,dataTrainDecorrelated,
fitmethod=glm,
filtermethod=univariate_correlation,
filtermethod.control=list(pvalue=0.05,limit=0.25,method = "kendall"),
family = "binomial")
deBsFilteredkendall <- predictionStats_binary(cbind(dataTestDecorrelated$Class,predict(Filteredkendall_ml,dataTestDecorrelated)),"Kendall:logit",cex = 0.7)
Filteredspearman_ml <- filteredFit(Class~.,dataTrainDecorrelated,
fitmethod=glm,
filtermethod=univariate_correlation,
filtermethod.control=list(pvalue=0.05,limit=0.25,method = "spearman"),
family = "binomial")
deBsFilteredspearman <- predictionStats_binary(cbind(dataTestDecorrelated$Class,predict(Filteredspearman_ml,dataTestDecorrelated)),"De:Spearman:logit",cex = 0.7)
Filteredpearson_ml <- filteredFit(Class~.,dataTrainDecorrelated,
fitmethod=glm,
filtermethod=univariate_correlation,
filtermethod.control=list(pvalue=0.05,limit=0.25,method = "pearson"),
family = "binomial")
deBsFilteredpearson <- predictionStats_binary(cbind(dataTestDecorrelated$Class,predict(Filteredpearson_ml,dataTestDecorrelated)),"De: Pearson:logit",cex = 0.7)

FilteredFtest_ml <- filteredFit(Class~.,dataTrainDecorrelated,
fitmethod=glm,
filtermethod=univariate_residual,
filtermethod.control=list(pvalue=0.05,limit=0.25,uniTest = "Ftest",type="LOGIT"),
family = "binomial")
deBsFilteredFtest <- predictionStats_binary(cbind(dataTestDecorrelated$Class,predict(FilteredFtest_ml,dataTestDecorrelated)),"De:Filter_F:logit",cex = 0.7)
FilteredBinomial_ml <- filteredFit(Class~.,dataTrainDecorrelated,
fitmethod=glm,
filtermethod=univariate_residual,
filtermethod.control=list(pvalue=0.05,limit=0.25,uniTest = "Binomial",type="LOGIT"),
family = "binomial")
deBsFilteredBinomial <- predictionStats_binary(cbind(dataTestDecorrelated$Class,predict(FilteredBinomial_ml,dataTestDecorrelated)),"De:Filter_Bin:logit",cex = 0.7)
FilteredWilcox2_ml <- filteredFit(Class~.,dataTrainDecorrelated,
fitmethod=glm,
filtermethod=univariate_residual,
filtermethod.control=list(pvalue=0.05,limit=0.25,uniTest = "Wilcox",type="LOGIT"),
family = "binomial")
deBsFilteredWilcox2 <- predictionStats_binary(cbind(dataTestDecorrelated$Class,predict(FilteredWilcox2_ml,dataTestDecorrelated)),"De:Filter_Wil:logit",cex = 0.7)
FilteredtStudent_ml <- filteredFit(Class~.,dataTrainDecorrelated,
fitmethod=glm,
filtermethod=univariate_residual,
filtermethod.control=list(pvalue=0.05,limit=0.25,uniTest = "tStudent",type="LOGIT"),
family = "binomial")
deBsFilteredtStudent <- predictionStats_binary(cbind(dataTestDecorrelated$Class,predict(FilteredtStudent_ml,dataTestDecorrelated)),"De:Filter_tt:logit",cex = 0.7)

FilteredzIDI_ml <- filteredFit(Class~.,dataTrainDecorrelated,
fitmethod=glm,
filtermethod=univariate_Logit,
filtermethod.control=list(pvalue=0.1,limit=0.25,uniTest = "zIDI"),
family = "binomial")
deBsFilteredzIDI <- predictionStats_binary(cbind(dataTestDecorrelated$Class,predict(FilteredzIDI_ml,dataTestDecorrelated)),"De:Filter_IDI:logit",cex = 0.7)
FilteredzNRI_ml <- filteredFit(Class~.,dataTrainDecorrelated,
fitmethod=glm,
filtermethod=univariate_Logit,
filtermethod.control=list(pvalue=0.1,limit=0.25,uniTest = "zNRI"),
family = "binomial")
deBsFilteredzNRI <- predictionStats_binary(cbind(dataTestDecorrelated$Class,predict(FilteredzNRI_ml,dataTestDecorrelated)),"De:Filter_NRI:logit",cex = 0.7)
FilteredmRMR_ml <- filteredFit(Class~.,dataTrainDecorrelated,
fitmethod=glm,
filtermethod=mRMR.classic_FRESA,
filtermethod.control=list(feature_count=as.integer(0.05*nrow(dataTrainDecorrelated)+0.5)),
family = "binomial")
deBsFilteredmRMR <- predictionStats_binary(cbind(dataTestDecorrelated$Class,predict(FilteredmRMR_ml,dataTestDecorrelated)),"De:Filter_mRMR:logit",cex = 0.7)
par(mfrow = c(1,1),cex = 0.5)

Plotting the Filters Performance Statistics
berror <- deBsFilteredWilcox$berror
berror <- rbind(berror,deBsFilteredttest$berror)
berror <- rbind(berror,deBsFilteredspearman$berror)
berror <- rbind(berror,deBsFilteredkendall$berror)
berror <- rbind(berror,deBsFilteredpearson$berror)
berror <- rbind(berror,deBsFilteredFtest$berror)
berror <- rbind(berror,deBsFilteredBinomial$berror)
berror <- rbind(berror,deBsFilteredWilcox2$berror)
berror <- rbind(berror,deBsFilteredtStudent$berror)
berror <- rbind(berror,deBsFilteredzIDI$berror)
berror <- rbind(berror,deBsFilteredzNRI$berror)
berror <- rbind(berror,deBsFilteredmRMR$berror)
berror <- rbind(berror,deBsFilteredEnsemble$berror)
berror <- rbind(berror,deBsFilteredKS$berror)
berror <- rbind(berror,deBsFilteredDTS$berror)
berror <- rbind(berror,bsFilteredWilcox$berror)
berror <- rbind(berror,bsFilteredttest$berror)
berror <- rbind(berror,bsFilteredspearman$berror)
berror <- rbind(berror,bsFilteredkendall$berror)
berror <- rbind(berror,bsFilteredpearson$berror)
berror <- rbind(berror,bsFilteredFtest$berror)
berror <- rbind(berror,bsFilteredBinomial$berror)
berror <- rbind(berror,bsFilteredWilcox2$berror)
berror <- rbind(berror,bsFilteredtStudent$berror)
berror <- rbind(berror,bsFilteredzIDI$berror)
berror <- rbind(berror,bsFilteredzNRI$berror)
berror <- rbind(berror,bsFilteredmRMR$berror)
berror <- rbind(berror,bsFilteredEnsemble$berror)
berror <- rbind(berror,bsFilteredKS$berror)
berror <- rbind(berror,bsFilteredDTS$berror)
rownames(berror) <- c("De_Wilcox","De_ttest","De_spearman","De_kendall","De_Pearson","De_Ftest","De_Binomial","De_Wilcox2","De_tStudent","De_zIDI","De_zNRI","De_mRMR","De_Ensemble","De_KS","De_DTS","Wilcox","ttest","spearman","kendall","Pearson","Ftest","Binomial","Wilcox2","tStudent","zIDI","zNRI","mRMR","Ensemble","KS","DTS")
bpBER <- barPlotCiError(as.matrix(berror),
metricname = "Balanced Error",
thesets = "Hold-Out Error",
themethod = rownames(berror),
main = "Balanced Error",
offsets = c(0.5,1),
scoreDirection = "<",
ho=0.5,
args.legend = list(bg = "white",x="bottomright",inset=c(0.0,0),cex=0.5),
col = terrain.colors(nrow(berror))
)

aucs <- deBsFilteredWilcox$aucs
aucs <- rbind(aucs,deBsFilteredttest$aucs)
aucs <- rbind(aucs,deBsFilteredspearman$aucs)
aucs <- rbind(aucs,deBsFilteredkendall$aucs)
aucs <- rbind(aucs,deBsFilteredpearson$aucs)
aucs <- rbind(aucs,deBsFilteredFtest$aucs)
aucs <- rbind(aucs,deBsFilteredBinomial$aucs)
aucs <- rbind(aucs,deBsFilteredWilcox2$aucs)
aucs <- rbind(aucs,deBsFilteredtStudent$aucs)
aucs <- rbind(aucs,deBsFilteredzIDI$aucs)
aucs <- rbind(aucs,deBsFilteredzNRI$aucs)
aucs <- rbind(aucs,deBsFilteredmRMR$aucs)
aucs <- rbind(aucs,deBsFilteredEnsemble$aucs)
aucs <- rbind(aucs,deBsFilteredKS$aucs)
aucs <- rbind(aucs,deBsFilteredDTS$aucs)
aucs <- rbind(aucs,bsFilteredWilcox$aucs)
aucs <- rbind(aucs,bsFilteredttest$aucs)
aucs <- rbind(aucs,bsFilteredspearman$aucs)
aucs <- rbind(aucs,bsFilteredkendall$aucs)
aucs <- rbind(aucs,bsFilteredpearson$aucs)
aucs <- rbind(aucs,bsFilteredFtest$aucs)
aucs <- rbind(aucs,bsFilteredBinomial$aucs)
aucs <- rbind(aucs,bsFilteredWilcox2$aucs)
aucs <- rbind(aucs,bsFilteredtStudent$aucs)
aucs <- rbind(aucs,bsFilteredzIDI$aucs)
aucs <- rbind(aucs,bsFilteredzNRI$aucs)
aucs <- rbind(aucs,bsFilteredmRMR$aucs)
aucs <- rbind(aucs,bsFilteredEnsemble$aucs)
aucs <- rbind(aucs,bsFilteredKS$aucs)
aucs <- rbind(aucs,bsFilteredDTS$aucs)
rownames(aucs) <- rownames(berror)
bpAUC <- barPlotCiError(as.matrix(aucs),
metricname = "ROC AUC",
thesets = "Hold-Out AUC",
themethod = rownames(aucs),
main = "AUC",
offsets = c(-0.5,1),
scoreDirection = ">",
ho=0.5,
args.legend = list(bg = "white",x="bottomleft",inset=c(0.0,0),cex=0.5),
col = terrain.colors(nrow(aucs))
)
