gen_even_slices#

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

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

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

参数:
nint

序列的大小。

n_packsint

要生成的切片数量。

n_samplesint, default=None

样本数量。当切片用于稀疏矩阵索引时,传递n_samples;切片超出范围会引发异常,而对于NumPy数组则不会。

产量:
表示从 0 到 n 的一组索引的切片

另请参见

生成批次

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

示例

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