我想使用熊猫的滚动方法。我需要稍作调整,但是,我希望将“值”放在“窗口”的顶部。
目前,我正在使用这个:
self.df['new_col'] = self.df['Zone3'].rolling(4).sum()
这是产生这个:
Date Time Period Zone4 Zone3 new_col
0 2018-02-23 00:00 900 11 2 NaN
1 2018-02-23 00:15 900 11 1 NaN
2 2018-02-23 00:30 900 7 3 NaN
3 2018-02-23 00:45 900 2 0 6.0
4 2018-02-23 01:00 900 3 2 6.0
5 2018-02-23 01:15 900 7 0 5.0
6 2018-02-23 01:30 900 2 4 6.0
我真正想要的:
Date Time Period Zone4 Zone3 new_col
0 2018-02-23 00:00 900 11 2 6.0
1 2018-02-23 00:15 900 11 1 6.0
2 2018-02-23 00:30 900 7 3 5.0
3 2018-02-23 00:45 900 2 0 6.0
4 2018-02-23 01:00 900 3 2 NaN
5 2018-02-23 01:15 900 7 0 NaN
6 2018-02-23 01:30 900 2 4 NaN
请注意,总和值位于窗口的开头(位置 1),而不是结尾(位置 4)
如果滚动是错误的方法,很好,任何方法都会有所帮助。我知道如何以“pythonic”的方式(使用 for 循环)来做到这一点,我只是希望使用 pandas 的数据框来做到这一点。
先感谢您