deepbox/preprocess
Splitting & Cross-Validation
Train-test splitting, grouped strategies, repeated folds, stratification, and time-series aware splits.
Model validation
type SplitResult
export type SplitResult = { readonly trainIndex: number[]; readonly testIndex: number[]; };
Represents a single train/test split with named index arrays.
GroupKFold
Group K-Fold cross-validator.
GroupShuffleSplit
Shuffle-Group(s)-Out cross-validation iterator.
KFold
K-Folds cross-validator.
LeaveOneOut
Leave-One-Out cross-validator.
LeavePOut
Leave-P-Out cross-validator.
RepeatedKFold
Repeated K-Fold cross-validator.
RepeatedStratifiedKFold
Repeated Stratified K-Fold cross-validator.
ShuffleSplit
Random permutation cross-validator.
StratifiedKFold
Stratified K-Folds cross-validator.
StratifiedShuffleSplit
Stratified ShuffleSplit cross-validator.
TimeSeriesSplit
Time Series cross-validator.
trainTestSplit
export declare function trainTestSplit(X: Tensor, y?: Tensor, options?: { testSize?: number; trainSize?: number; randomState?: number; shuffle?: boolean; stratify?: Tensor; }): Tensor[];
Split arrays into random train and test subsets.
preprocess-splitting.ts
import { KFold, StratifiedKFold, TimeSeriesSplit, trainTestSplit,} from "deepbox/preprocess";import { tensor } from "deepbox/ndarray";const X = tensor([[1], [2], [3], [4], [5], [6]]);const y = tensor([0, 0, 1, 1, 0, 1]);console.log(trainTestSplit(X, y, { testSize: 0.33, randomState: 42 }));console.log([...new KFold({ nSplits: 3 }).split(X)]);console.log([...new StratifiedKFold({ nSplits: 3 }).split(X, y)]);console.log([...new TimeSeriesSplit({ nSplits: 3 }).split(X)]);