【发布时间】:2020-10-29 01:12:04
【问题描述】:
我希望对数据帧进行滚动均值,但滚动均值必须覆盖时间戳中列的长度。
例如,在 time[1](只有一行)中,计算所有列 rows(1) 的滚动平均值,然后在 time[2] 中,对所有行 (2) 执行相同的操作,依此类推。随着时间戳的推进,窗口也随之推进。
此外,这是按组完成的。因此,如果它在 A 组上执行此操作,它必须进行某种重置,因为它会转到 B 组
有点像这个话题:Computing rolling mean in data.table with adaptive window lengths
但在 python 上,并考虑时间戳。
另外,数据集很大,所以它必须是最优的,迭代和循环需要数年时间
【问题讨论】:
-
您能否提供数据集的最小部分以充分代表您的需求?
-
dataframe=pd.Dataframe({'timestamp':[0,1,2,3,4,0,1,2,3,4,5], 'user':['A','A','A','A','B','B','B','B','B'], 'answered_correctly':[0,1,1,0,1,1,1,0,0]}) -
这将是数据集的一个示例。所以我需要获得用户的平均准确度,而不是从未来的时间戳中获取值,并考虑所有过去的时间戳。因此,对于用户 A,它将是 [0, 0.5 , 0.66 , 0.5]
-
你试过下面的答案吗?