Out-of-fold Platt calibration: the cases are shuffled within each class with a seeded generator
and dealt into folds in turn (so each fold holds both classes where it can); each fold is
calibrated by a fit on the others, so no case's calibrated value depends on its own label.
Returns the calibrated probabilities in the input's order, or null with fewer than two cases.
With fewer cases than folds, each case is its own fold (leave one out).
The shuffle is by position, so the folds depend on the input's order as well as the seed: pass
the cases in a stable order (ComputeCellMetrics sorts them by case ID).
Out-of-fold Platt calibration: the cases are shuffled within each class with a seeded generator and dealt into folds in turn (so each fold holds both classes where it can); each fold is calibrated by a fit on the others, so no case's calibrated value depends on its own label. Returns the calibrated probabilities in the input's order, or null with fewer than two cases. With fewer cases than folds, each case is its own fold (leave one out).
The shuffle is by position, so the folds depend on the input's order as well as the seed: pass the cases in a stable order (ComputeCellMetrics sorts them by case ID).