gen_even_slices#

sklearn.utils.gen_even_slices(n, n_packs, *, n_samples=None)#

生成器,用于创建均匀分布的 n_packs 个切片,直到 n

如果 n_packs 不能整除 n ,除了前 n % n_packs 个切片外,剩余的切片可能包含更少的元素。

Parameters:
nint

序列的大小。

n_packsint

要生成的切片数量。

n_samplesint, default=None

样本数量。当切片用于稀疏矩阵索引时传递 n_samples ;超出末端的切片会引发异常,而这对NumPy数组是有效的。

Yields:
表示从0到n的一组索引的 slice

See also

gen_batches

生成器,用于创建包含batch_size个元素的切片 从0到n。

Examples

>>> 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)]