从滚动总和中排除最近一天
Excluding most recent day from rolling sum
我有一个 pandas 数据框,下面显示了降雨数据的摘录。 'Pcp' 是一天的总数,然后我用它来计算到感兴趣的那一天(3 天到 28 天)之前的其他时间段的降雨量滚动累积总量,使用:
df['Pcp_3day'] = df['Pcp'].rolling(3).sum()
我想要实现的是 n 天前的滚动总数,但不包括感兴趣的日期。换句话说,目前,滚动总数是由第 0 天、-1 天、-2 天的降雨总量形成的,而我想排除第 0 天(感兴趣的那一天),并有第 -1 天的滚动总数, -2, -3,即之前的三天。
我不确定这个类比是否很清楚,但如果有任何建议,将不胜感激。
谢谢
Pcp Pcp_3day Pcp_7day Pcp_10day Pcp_14day Pcp_21day Pcp_28day
date
2017-12-04 8.382 19.304 21.082 40.132 40.132 42.418 71.374
2017-12-05 12.192 20.574 33.020 42.164 52.324 52.578 81.534
2017-12-06 1.016 21.590 33.020 34.290 53.340 53.594 82.550
2017-12-07 12.700 25.908 45.466 46.990 66.040 66.040 95
2017-12-08 5.080 18.796 50.292 51.816 71.120 71.120 88.900
试试这个:
df['Pcp_3day'] = df['Pcp'].shift().rolling(3).sum()
我有一个 pandas 数据框,下面显示了降雨数据的摘录。 'Pcp' 是一天的总数,然后我用它来计算到感兴趣的那一天(3 天到 28 天)之前的其他时间段的降雨量滚动累积总量,使用:
df['Pcp_3day'] = df['Pcp'].rolling(3).sum()
我想要实现的是 n 天前的滚动总数,但不包括感兴趣的日期。换句话说,目前,滚动总数是由第 0 天、-1 天、-2 天的降雨总量形成的,而我想排除第 0 天(感兴趣的那一天),并有第 -1 天的滚动总数, -2, -3,即之前的三天。
我不确定这个类比是否很清楚,但如果有任何建议,将不胜感激。
谢谢
Pcp Pcp_3day Pcp_7day Pcp_10day Pcp_14day Pcp_21day Pcp_28day
date
2017-12-04 8.382 19.304 21.082 40.132 40.132 42.418 71.374
2017-12-05 12.192 20.574 33.020 42.164 52.324 52.578 81.534
2017-12-06 1.016 21.590 33.020 34.290 53.340 53.594 82.550
2017-12-07 12.700 25.908 45.466 46.990 66.040 66.040 95
2017-12-08 5.080 18.796 50.292 51.816 71.120 71.120 88.900
试试这个:
df['Pcp_3day'] = df['Pcp'].shift().rolling(3).sum()