将数据帧划分为重叠段

盖伊

我有一个带有时间索引的数据帧,需要将其划分为重叠的段(比如长度为 5 天,偏移量为 1 天)。

这是一个示例数据框:

import pandas as pd    
i=pd.date_range('05-01-2015', '21-05-2018', freq='D')
x=pd.DataFrame(index=i, data = np.random.randint(0, 100, len(i)))

分区后,段的索引应分别从2015-05-012015-05-05、从2015-05-022015-05-06、从2015-05-032015-05-08等。我认为应该有一些技巧groupby可以做到这一点,但无法提出有效的实现。

作为参考,这是在mathematica 中实现的

Partition[list,n,d] - 生成偏移量为 d 的子列表。

我将不胜感激你们能提供的任何见解。

经济

正如@alkasm 指出的那样,您可以使用 Pandas 中的示例数据帧对 5 天分区执行聚合计算rolling

import pandas as pd    
i = pd.date_range('05-01-2015', '21-05-2018', freq='D')
x = pd.DataFrame(index=i, data = np.random.randint(0, 100, len(i)))

x.rolling(5).sum()

这样做的技巧是,它计算向后看的聚合函数,因此您可能需要扩展索引以包括前四天。数据框中2018-05-06的一行带有 5 行rolling()调用的索引将表示2018-05-022018-05-06包含的段(即 5 天)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

将范围分为重叠范围

将数据划分为NA数量最少的时间段

将数据帧子集划分为相等的子组块

如何将非重叠数据帧矢量化为重叠移位数据帧?

将数据帧拆分为多个,并重叠行

将字符向量划分为段

将滑块值划分为范围段

根据值将数据帧划分为三个子帧

将Python列表拆分为重叠块的列表

将音频文件拆分为重叠的块

如何将数据帧的正数元素划分为特定的数据帧列,将负数的元素划分为另一列?

通过 value_counts() 将数据帧划分为两个 DF

如何将数据帧重新划分为固定大小的分区?

如何将数据帧划分为特定长度且点数不等的箱?

将重叠范围划分为所有唯一范围

将聊天数据划分为会话

Rx-按条件将流划分为段(列表)

如何将时间段划分为部分?

将年龄段划分为每个月

Android 将水平空间均匀划分为 N 段

如何将数组划分为段,然后使用python numpy执行段的子段?

将数据帧的列按组划分?

如何有效地将数据帧子集划分为多个块以传递给列表列表

根据另一列的总和将数据帧划分为十分位数的方法

有更好的方法将序列拆分为重叠的块吗?

solr:如何将字段拆分为重叠的两个词短语?

将重叠间隔列表拆分为 pyspark 数据帧中的非重叠子间隔,并检查值在重叠间隔上是否有效

划分数据帧

如何根据索引值之间超过一定幅度的差异将数据帧分为不均匀的段?