Prediction with support vector machine classifier
svm.predict.Rd
Predict from a support vector machine classifier fit.
Arguments
- svm.intcv.model
a support vector machine classifier built with
svm.intcv
.- pred.obj
dataset to have its sample group predicted. The dataset must have rows as probes and columns as samples. It must have an equal number of probes as the dataset being trained.
- pred.obj.group.id
a vector of sample-group labels for each sample of the dataset to be predicted. It must have an equal length to the number of samples as
pred.obj
.
Value
a list of 3 elements:
- pred
predicted sample group for each sample
- mc
a predicted misclassification error rate (external validation)
- prob
predicted probability for each sample
Examples
set.seed(101)
biological.effect <- estimate.biological.effect(uhdata = uhdata.pl)
ctrl.genes <- unique(rownames(uhdata.pl))[grep("NC", unique(rownames(uhdata.pl)))]
biological.effect.nc <- biological.effect[!rownames(biological.effect) %in% ctrl.genes, ]
group.id <- substr(colnames(biological.effect.nc), 7, 7)
biological.effect.train.ind <- colnames(biological.effect.nc)[c(sample(which(group.id == "E"), size = 64),
sample(which(group.id == "V"), size = 64))]
biological.effect.test.ind <- colnames(biological.effect.nc)[!colnames(biological.effect.nc) %in% biological.effect.train.ind]
biological.effect.nc.tr <- biological.effect.nc[, biological.effect.train.ind]
biological.effect.nc.te <- biological.effect.nc[, biological.effect.test.ind]
svm.int <- svm.intcv(X = biological.effect.nc.tr,
y = substr(colnames(biological.effect.nc.tr), 7, 7),
kfold = 5, seed = 1)
svm.pred <- svm.predict(svm.intcv.model = svm.int,
pred.obj = biological.effect.nc.te,
pred.obj.group.id = substr(colnames(biological.effect.nc.te), 7, 7))
svm.int$mc
#> [1] 0.1326154
svm.pred$mc
#> [1] 0.078125