ray.data.Dataset.split_at_indices#

Dataset.split_at_indices(indices: List[int]) List[MaterializedDataset][源代码]#

在给定的索引处分割数据集(类似于 np.split)。

备注

此操作将触发对此数据集执行的延迟转换。

示例

>>> import ray
>>> ds = ray.data.range(10)
>>> d1, d2, d3 = ds.split_at_indices([2, 5])
>>> d1.take_batch()
{'id': array([0, 1])}
>>> d2.take_batch()
{'id': array([2, 3, 4])}
>>> d3.take_batch()
{'id': array([5, 6, 7, 8, 9])}

时间复杂度:O(分割次数)

参数:

indices – 指示数据集分割位置的排序整数列表。如果索引超过数据集的长度,则返回一个空数据集。

返回:

数据集的划分。

参见

Dataset.split()

split_at_indices() 不同,后者允许您将数据集分割成不同的大小,而 Dataset.split() 则将数据集分割成大致相等的份数。

Dataset.split_proportionately()

此方法等效于 Dataset.split_at_indices() 如果你手动计算索引。

Dataset.streaming_split()

split() 不同,streaming_split() 不会在内存中具体化数据集。