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 的一组索引的 slice

另请参阅

gen_batches

用于创建包含从 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)]