Documentation
Classes
GroupShuffleSplit

GroupShuffleSplit

Shuffle-Group(s)-Out cross-validation iterator

Provides randomized train/test indices to split data according to a third-party provided group. This group information can be used to encode arbitrary domain specific stratifications of the samples as integers.

For instance the groups could be the year of collection of the samples and thus allow for cross-validation against time-based splits.

The difference between LeavePGroupsOut and GroupShuffleSplit is that the former generates splits using all subsets of size p unique groups, whereas GroupShuffleSplit generates a user-determined number of random test splits, each with a user-determined fraction of unique groups.

For example, a less computationally intensive alternative to LeavePGroupsOut(p=10) would be GroupShuffleSplit(test\_size=10, n\_splits=100).

Note: The parameters test\_size and train\_size refer to groups, and not to samples, as in ShuffleSplit.

Read more in the User Guide.

Python Reference (opens in a new tab)

Constructors

constructor()

Signature

new GroupShuffleSplit(opts?: object): GroupShuffleSplit;

Parameters

NameTypeDescription
opts?object-
opts.n_splits?numberNumber of re-shuffling & splitting iterations. Default Value 5
opts.random_state?numberControls the randomness of the training and testing indices produced. Pass an int for reproducible output across multiple function calls. See Glossary.
opts.test_size?numberIf float, should be between 0.0 and 1.0 and represent the proportion of groups to include in the test split (rounded up). If int, represents the absolute number of test groups. If undefined, the value is set to the complement of the train size. The default will change in version 0.21. It will remain 0.2 only if train\_size is unspecified, otherwise it will complement the specified train\_size. Default Value 0.2
opts.train_size?numberIf float, should be between 0.0 and 1.0 and represent the proportion of the groups to include in the train split. If int, represents the absolute number of train groups. If undefined, the value is automatically set to the complement of the test size.

Returns

GroupShuffleSplit

Defined in: generated/model_selection/GroupShuffleSplit.ts:33 (opens in a new tab)

Properties

_isDisposed

boolean = false

Defined in: generated/model_selection/GroupShuffleSplit.ts:31 (opens in a new tab)

_isInitialized

boolean = false

Defined in: generated/model_selection/GroupShuffleSplit.ts:30 (opens in a new tab)

_py

PythonBridge

Defined in: generated/model_selection/GroupShuffleSplit.ts:29 (opens in a new tab)

id

string

Defined in: generated/model_selection/GroupShuffleSplit.ts:26 (opens in a new tab)

opts

any

Defined in: generated/model_selection/GroupShuffleSplit.ts:27 (opens in a new tab)

Accessors

py

Signature

py(): PythonBridge;

Returns

PythonBridge

Defined in: generated/model_selection/GroupShuffleSplit.ts:62 (opens in a new tab)

Signature

py(pythonBridge: PythonBridge): void;

Parameters

NameType
pythonBridgePythonBridge

Returns

void

Defined in: generated/model_selection/GroupShuffleSplit.ts:66 (opens in a new tab)

Methods

dispose()

Disposes of the underlying Python resources.

Once dispose() is called, the instance is no longer usable.

Signature

dispose(): Promise<void>;

Returns

Promise<void>

Defined in: generated/model_selection/GroupShuffleSplit.ts:119 (opens in a new tab)

get_n_splits()

Returns the number of splitting iterations in the cross-validator

Signature

get_n_splits(opts: object): Promise<number>;

Parameters

NameTypeDescription
optsobject-
opts.X?anyAlways ignored, exists for compatibility.
opts.groups?anyAlways ignored, exists for compatibility.
opts.y?anyAlways ignored, exists for compatibility.

Returns

Promise<number>

Defined in: generated/model_selection/GroupShuffleSplit.ts:136 (opens in a new tab)

init()

Initializes the underlying Python resources.

This instance is not usable until the Promise returned by init() resolves.

Signature

init(py: PythonBridge): Promise<void>;

Parameters

NameType
pyPythonBridge

Returns

Promise<void>

Defined in: generated/model_selection/GroupShuffleSplit.ts:75 (opens in a new tab)

split()

Generate indices to split data into training and test set.

Signature

split(opts: object): Promise<ArrayLike>;

Parameters

NameTypeDescription
optsobject-
opts.X?ArrayLike[]Training data, where n\_samples is the number of samples and n\_features is the number of features.
opts.groups?ArrayLikeGroup labels for the samples used while splitting the dataset into train/test set.
opts.y?ArrayLikeThe target variable for supervised learning problems.

Returns

Promise<ArrayLike>

Defined in: generated/model_selection/GroupShuffleSplit.ts:183 (opens in a new tab)