【发布时间】:2022-10-30 16:13:04
【问题描述】:
这实际上是我之前问题的延伸,但我被要求将其作为一个单独的问题 Rolling average on previous dates per group
我有以下数据集:
Name Loc Site Date Total
Alex Italy A 12.31.2020 30
Alex Italy B 12.31.2020 20
Alex Italy B 12.30.2020 100
Alex Italy B 12.28.2020 40
Alex Italy A 12.23.2020 80
Alex France A 12.28.2020 10
Alex France B 12.28.2020 20
Alex France B 12.23.2020 10
Alex France A 12.23.2020 100
Alex France B 12.21.2020 25
我想在每个名称、位置和日期的日期之前的任意时间范围内为每一行添加总计的平均值
这是我在前 5 天寻找的结果(不包括日期):
Name Loc Site Date Total Prv_Avg
Alex Italy A 12.31.2020 30 70
Alex Italy B 12.31.2020 20 70
Alex Italy B 12.30.2020 100 40
Alex Italy B 12.28.2020 40 80
Alex Italy A 12.23.2020 80 NaN
Alex France A 12.28.2020 10 55
Alex France B 12.28.2020 20 55
Alex France B 12.23.2020 10 25
Alex France A 12.23.2020 100 25
Alex France B 12.21.2020 25 NaN
Null 用于数据中没有前 5 天的行
【问题讨论】:
-
Prv_Avg列的前两个值不应该是 100 而不是 70? -
不,对于 31.12,它将计算 30.12 和 28.12(均在 5 天内,不包括 31.12)
标签: python pandas group-by time-series