【发布时间】:2022-01-18 01:03:13
【问题描述】:
我想将大约 100 万行的典型时间序列数据集转换为具有 50% 重叠的 100 项窗口。请注意,它是一个多变量的,例如,给定 8 个特征和 1000 个包含 100 个项目的窗口,最终形状将是 (1000, 100, 8) 替换 (n_samples, n_timesteps, n_features)。目标是用它来训练机器学习算法,包括深度神经网络。
到目前为止,我很喜欢使用 numpy 的 sliding_window_view,如下所示;
x = np.arange(100).reshape(20, 5)
v = sliding_window_view(x, (3, 5))
v
不幸的是,当我在数百万行的大型数据集中用完 RAM 时出现崩溃。你有什么建议吗?
此外,一个严重的限制是每个时间步长(整数)都有一个连续标签,数据集需要根据该标签进行分组(使用pandas),因此这限制了部分读取它的一些选项。
【问题讨论】:
标签: numpy tensorflow pytorch