plot.precision.multiclass
plot.precision.multiclass.Rd
Plot the average external error rate of different classifications from the output of precision.simulate.multiclass
Arguments
- data
output variable of
precision.simulate.multiclass
- mytitle
plot title
- class.order
the order of classifications
- ylim
the length of y axis in the plot
- save.name
plot name to be saved if not NULL
Examples
if (FALSE) {
set.seed(101)
biological.effect <- estimate.biological.effect(uhdata = uhdata.pl)
handling.effect <- estimate.handling.effect(uhdata = uhdata.pl,
nuhdata = nuhdata.pl)
ctrl.genes <- unique(rownames(uhdata.pl))[grep("NC", unique(rownames(uhdata.pl)))]
biological.effect.nc <- biological.effect[!rownames(biological.effect) %in% ctrl.genes, ]
handling.effect.nc <- handling.effect[!rownames(handling.effect) %in% ctrl.genes, ]
group.id <- substr(colnames(biological.effect.nc), 7, 7)
# randomly split biological effect data into training and test set with
# equal number of endometrial and ovarian samples
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.train.test.split =
list("tr" = biological.effect.train.ind,
"te" = biological.effect.test.ind)
# non-randomly split handling effect data into training and test set
handling.effect.train.test.split =
list("tr" = c(1:64, 129:192),
"te" = 65:128)
biological.effect.nc.tr <- biological.effect.nc[, biological.effect.train.ind]
biological.effect.nc.te <- biological.effect.nc[, biological.effect.test.ind]
handling.effect.nc.tr <- handling.effect.nc[, c(1:64, 129:192)]
handling.effect.nc.te <- handling.effect.nc[, 65:128]
# Simulation
precision.multiclass.results = precision.simulate.multiclass(seed = 0, N = 3,
biological.effect.tr = biological.effect.nc.tr,
biological.effect.te = biological.effect.nc.te,
handling.effect.tr = handling.effect.nc.tr,
handling.effect.te = handling.effect.nc.te,
group.id.tr = substr(colnames(biological.effect.nc.tr), 7, 7),
group.id.te = substr(colnames(biological.effect.nc.te), 7, 7),
train.design.met = "BLK",
test.design.met = "STR",
train.norm.met = "MN",
test.norm.met = "fMN",
class.list = c("SVM", "kNN", "LASSO"),
train.batch.id = list(1:40, 41:64, (129:152)-64, (153:192)-64),
test.batch.id = list((65:80)-64,(81:114)-64,(115:128)-64))
# Plot
plot.precision.multiclass(data = precision.multiclass.results,
mytitle = "Average external error rates",
class.order = c("SVM", "kNN", "ClaNC"),
ylim = c(0,0.5),
save.name = "myimage")
}