Skip to content

splits

Classes:

NameDescription
FoldA single train/validation split.

Functions:

NameDescription
temporal_foldSingle temporal split.
expanding_foldsGenerate folds for expanding-window time-series cross-validation.
sliding_foldsGenerate folds for sliding-window time-series cross-validation.

Bases: NamedTuple

A single train/validation split.

temporal_fold(n: int, train_ratio: float, *, gap: int = 0) -> Fold

Single temporal split.

Layout::

[===== Train =====][gap][== Val ==]

Parameters:

NameTypeDescriptionDefault
nintTotal number of samples.required
train_ratiofloatFraction of data for training, in (0, 1).required
gapintPoints to skip between train and validation.0

Returns:

TypeDescription
Fold

Raises:

TypeDescription
ValueErrorIf ratio is invalid or any split would be empty.
expanding_folds(n: int, *, initial_train_size: int, validation_size: int, stride: int | None = None, gap: int = 0) -> list[Fold]

Generate folds for expanding-window time-series cross-validation.

The training set starts at initial_train_size and grows with each fold while the validation window slides forward.

Parameters:

NameTypeDescriptionDefault
nintTotal number of samples.required
initial_train_sizeintMinimum training samples (first fold).required
validation_sizeintValidation samples per fold.required
strideint or NoneStep size for the validation window. Defaults to validation_size.None
gapintPoints to skip between train and validation.0

Returns:

TypeDescription
list[Fold]
sliding_folds(n: int, *, train_size: int, validation_size: int, stride: int | None = None, gap: int = 0) -> list[Fold]

Generate folds for sliding-window time-series cross-validation.

A fixed-size training window slides forward together with the validation window, discarding the oldest observations at each step.

Parameters:

NameTypeDescriptionDefault
nintTotal number of samples.required
train_sizeintFixed training samples per fold.required
validation_sizeintValidation samples per fold.required
strideint or NoneStep size for the sliding window. Defaults to validation_size.None
gapintPoints to skip between train and validation.0

Returns:

TypeDescription
list[Fold]