gen_even_slices#

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

產生器以建立最多 nn_packs 個均勻間隔的切片。

如果 n_packs 不能整除 n,除了前 n % n_packs 個切片之外,其餘切片可能包含較少的元素。

參數:
nint

序列的大小。

n_packsint

要產生的切片數量。

n_samplesint, default=None

樣本數量。當切片將用於稀疏矩陣索引時,請傳遞 n_samples;切片超出範圍會引發例外,但對於 NumPy 陣列則不會。

產生:
slice 代表從 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)]