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()
不会在内存中具体化数据集。