Feature stability selection in DIABLO


I am trying to get the variables that are stably selected across CV runs of my Diablo model.

MyPerf.diablo ← perf(tuned.diablo, validation = ‘Mfold’, folds = 5,
nrepeat = 10,
dist = ‘centroids.dist’)

MyPerf.diablo$features$stable already returns a stability selection % for each nrep.

I thought that the stability selection was the frequency of selection (i.e. 8 times) / 10 nreps
Why do we get a % for each nreps and how could I then extract the overall stability selection of particular features?


Remember this is a folded CV model. You set folds = 5 within the function call. Hence, for each repeat, there are actually 5 models which are developed, of which the stability is calculated across.

This is my question too. should we simply average all nreps?

hi @Eleonore,

Yes, you can average this across the repeats. I just realised that we had averaged across repeats for PLSDA but not for block.PLSDA. I’ll mark this as a bug. Thanks for your feedback.