首页 > 解决方案 > Pandas 根据其他列的窗口间隔求和列

问题描述

有一个像这样的df:

weight   timeblock  
1        1620975600   
1        1620975640  
1        1620975700 
1        1620975715 
1        1620975740 
1        1620975790  
1        1620975800

我想根据时间块间隔的 45 秒间隔对权重列求和,使其看起来像:

weight     interval
2          1620975600
2          1620975690
1          1620975735
2          1620975780

其中间隔列表示从该时间开始的 45 秒时间间隔。

我将如何执行此操作并跳过不存在时间块的 45 秒间隔?

标签: pythonpandas

解决方案


不知道为什么他们删除了他们的评论,但这似乎有效:

df = df.groupby(df.timeblock // 45).weight.sum().reset_index()

df['timeblock'] = df['timeblock'].apply(lambda x: x*45)

推荐阅读