You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中如何为月度滚动平均添加1个月滞后参数?

月度滚动平均加1个月滞后的实现方法

直接在你的滚动平均代码末尾加上.shift(1)就能满足需求,修改后的完整代码:

history_data_resampled.rolling(window=12).mean().shift(1)

为什么这么做?

  • 原代码rolling(window=12).mean()算出的是每个月份自身对应的过去12个月滚动平均,比如10月的数据就是包含10月在内的前12个月平均
  • .shift(1)会把整个结果序列向后挪1个月度周期,这样10月的位置就会显示9月的滚动平均值,正好符合你“当前月份输出上月平均”的要求

还有一种替代写法,如果你想在滚动窗口阶段就排除当前月份,可以给rolling加closed='left'参数:

history_data_resampled.rolling(window=12, closed='left').mean()

这种方式下,每个月份计算的是不包含自身的过去12个月平均,效果和先计算再shift一样,但.shift(1)的写法更直白易懂,优先推荐。

内容的提问来源于stack exchange,提问作者Nada

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 20:21:11