gen_even_slices#

sklearn.utils.gen_even_slices(n, n_packs, *, n_samples=None)[источник]#

Генератор для создания n_packs равномерно распределенные срезы, идущие до n.

Если n_packs не делит n, за исключением первого n % n_packs срезы, оставшиеся срезы могут содержать меньше элементов.

Параметры:
nint

Размер последовательности.

n_packsint

Количество срезов для генерации.

n_samplesint, default=None

Количество образцов. Передайте n_samples когда срезы используются для индексирования разреженной матрицы; срез за пределами вызывает исключение, в то время как для массивов NumPy это работает.

Возвращает:
slice представляющий набор индексов от 0 до n.

Смотрите также

gen_batches

Генератор для создания срезов, содержащих batch_size элементов от 0 до n.

Примеры

>>> from sklearn.utils import gen_even_slices
>>> list(gen_even_slices(10, 1))
[slice(0, 10, None)]
>>> list(gen_even_slices(10, 10))
[slice(0, 1, None), slice(1, 2, None), ..., slice(9, 10, None)]
>>> list(gen_even_slices(10, 5))
[slice(0, 2, None), slice(2, 4, None), ..., slice(8, 10, None)]
>>> list(gen_even_slices(10, 3))
[slice(0, 4, None), slice(4, 7, None), slice(7, 10, None)]