rf1 <- randomForest(sdat, proximity = TRUE)
kern <- rf1$prox
pc1 <- prcomp(kern)
el1 <- getElbows(pc1$sdev, plot = TRUE)[1]el2 <- getElbows(pc1$sdev, plot = FALSE)[2]
#edat <- scale(pc1$x[,1:el1], center = TRUE, scale = TRUE)
edat <- pc1$x[, 1:el1]pairs(edat, col = gaba + 1, pch = 20, cex = 0.5)image(kern, col = viridis(255))Here we are restricting hierarchical GMM to only go through on level. We are comparing the cluster results to the gaba labels.
set.seed(3144)
h2 <- hmc(edat, maxDepth = 2, ccol = ccol)
h2lab <- viridis(max(h2$dat$labels$col))
h2col <- h2$dat$labels$colp1 <- stackM(h2, ccol = "black", centered = TRUE, depth = 1)
p2 <- stackMraw(sdat, h2$dat$labels$L1, centered = TRUE, depth = 2, ccol = ccol)
grid.arrange(p1,p2, nrow=1)cols <- c("black", "magenta")[gabaID$gaba+1]
acols <- alpha(cols, 0.35)
#pairs(h2$dat$data, pch = 19, cex = 0.7, col = acols)
plot(h2$dat$data, col = acols, pch = c(19,3)[gaba+1], cex = c(0.5,1)[gaba+1])pairs(sdat, col = acols, pch = c(19,3)[gaba+1], cex = c(0.5,1)[gaba+1])acols2 <- alpha(h2lab[h2$dat$labels$col], 0.45)
par(bg = "gray45")
plot(h2$dat$data, pch = c(3,20)[gaba + 1], cex = 1, col = acols2)pairs(sdat, pch = 19, cex = 0.7, col = acols2)dev.off()## null device
## 1
p0 <- mclust::adjustedRandIndex(pred, gaba)
perms <- foreach(i = 1:1.5e4, .combine = c) %dopar% {
set.seed(i*2)
mclust::adjustedRandIndex(sample(pred), gaba)
}
pv0 <- sum(c(perms,p0) >= p0)/length(perms)hist(perms, xlim = c(min(perms), p0 + 0.25*p0),
main = "permutation test of ARI values", probability = TRUE)
#hist(perms, probability = TRUE)
abline(v = p0, col = 'red')t1## truth
## pred FALSE TRUE
## FALSE 375 33
## TRUE 333 52
| measurment | value |
|---|---|
| Misclassification Rate | 0.4615385 |
| Accuracy | 0.5384615 |
| Sensitivity | 0.6117647 |
| Specificity | 0.529661 |
| Precision | 0.1350649 |
| Recall | 0.6117647 |
| ARI | 0.00492 |
| \(p\)-value for ARI | 0.010333 |
| F1-score | 0.2212766 |
| TP | 52 |
| FP | 333 |
| TN | 375 |
| FN | 33 |