mindspore.dataset.text.SlidingWindow
- class mindspore.dataset.text.SlidingWindow(width, axis=0)[源代码]
在输入数据的某个维度上进行滑窗切分处理,当前仅支持处理1-D的Tensor。
- 参数:
width (int) - 窗口的宽度,它必须是整数并且大于零。
axis (int, 可选) - 计算滑动窗口的轴。默认值:
0
。
- 异常:
TypeError - 参数 width 的类型不为int。
ValueError - 参数 width 的值不为正数。
TypeError - 参数 axis 的类型不为int。
- 支持平台:
CPU
样例:
>>> import mindspore.dataset as ds >>> import mindspore.dataset.text as text >>> >>> # Use the transform in dataset pipeline mode >>> numpy_slices_dataset = ds.NumpySlicesDataset(data=[[1, 2, 3, 4, 5]], column_names=["col1"]) >>> # Data before >>> # | col1 | >>> # +--------------+ >>> # | [[1, 2, 3, 4, 5]] | >>> # +--------------+ >>> numpy_slices_dataset = numpy_slices_dataset.map(operations=text.SlidingWindow(3, 0)) >>> for item in numpy_slices_dataset.create_dict_iterator(num_epochs=1, output_numpy=True): ... print(item["col1"]) [[1 2 3] [2 3 4] [3 4 5]] >>> # Data after >>> # | col1 | >>> # +--------------+ >>> # | [[1, 2, 3], | >>> # | [2, 3, 4], | >>> # | [3, 4, 5]] | >>> # +--------------+ >>> >>> # Use the transform in eager mode >>> data = ["happy", "birthday", "to", "you"] >>> output = text.SlidingWindow(2, 0)(data) >>> print(output) [['happy' 'birthday'] ['birthday' 'to'] ['to' 'you']]
- 教程样例: