I have a quick question about DIABLO. When running
tune.BBMncomp2 = tune.block.splsda(X = X, Y = Y, ncomp = 3,test.keepX = test.keepX, design = design, validation = ‘loo’,dist = “mahalanobis.dist”,BPPARAM=BPPARAM)
I keep getting the warning:
The SGCCA algorithm did not converge
When I plot the error rate by:
MyResult.diablo2 <- block.splsda(X, Y, ncomp=6, keepX=list.keepX, design= design)
perf.diablo = perf(MyResult.diablo2, validation = ‘loo’, BPPARAM=BPPARAM)
plot(perf.diablo, col = color.mixo(5:7), sd = TRUE, legend.position = “horizontal”)
the error rate at ncomp = 1 is 0 and at ncomp=2 it is 0.05
- So according to the error rates, the model is pretty good, right? But why do I get this warning? Can I trust the model?
2). How do I deal with ncomp1 being the best ncomp? For plotIndiv I need to plot ncomp=2. That is just a simple visualisation and that is fine. For plotDIABLO I can chose comp=1. Great. But how about cim and circosPlot? I have not been able to plot just one comp. Also, the number of X to keep is pretty low. For the 3 datasets I include, it boils down to 10 variables in comp1 and an additional 5 in comp2. Is it advisable at all to try to plot circosPlot or networks with only 10 variables of comp1 or should I keep the other 5 from comp2 as well although the error rate increases (but is still overall pretty low)?
Thank you so much for your input. I really like this tool a lot!