微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将 pandas 系列转换为数据帧中每个滑动窗口中的一组行

如何解决将 pandas 系列转换为数据帧中每个滑动窗口中的一组行

我有一个熊猫系列:

0          3456
1          8526
2          3216
3          1236
4          7777
5          7778
6          7578
7          8778
8          7878
9          7078

我想像这样将其转换为 DataFrame:

0 3456 8526 3216 1236 7777
1 8526 3216 1236 7777 7778
2 3216 1236 7777 7778 7578
3 1236 7777 7778 7578 8778
4 7777 7778 7578 8778 7878
5 7778 7578 8778 7878 7078

基于原始系列的滑动窗口 1,此 DataFrame 的窗口大小为 5(列)。它应该是动态的,以便它可以容纳任何正数的滑动窗口。例如滑动窗口为 2(最后一个值被丢弃):

0 3456 8526 3216 1236 7777
1 3216 1236 7777 7778 7578
2 7777 7778 7578 8778 7878

我的问题与现有解决方案的区别在于,我的 Pandas Series 非常大,当前的解决方案在我的窗口尺寸很大(我需要 10000 以上)时经常会导致 OOM 错误

总结:

  1. 如上所示将系列转换为 DataFrame,同时
  2. 没有遇到大窗口大小的 OOM 错误,并且
  3. 对于滑动窗口的任何正整数都是动态的

感谢任何帮助:)

编辑:可以假设原始系列中的行数以百万计

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。