分组滚动平均值 [英] Rolling averages on groups

查看:90
本文介绍了分组滚动平均值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一系列的表格:

Contract  Date      
196012    1960-01-05    110.70
          1960-01-07    110.70
          1960-01-08    110.40
          1960-01-11    110.00
          1960-01-12    109.60
          1960-01-13    109.70
          1960-01-14    109.50
          1960-01-15    109.60
          1960-01-18    109.60
          1960-01-19    110.20
          1960-01-20    110.00
          1960-01-21    110.30
          1960-01-22    110.00
          1960-01-25    109.50
          1960-01-26    109.60
          1960-01-28    109.70
          1960-01-29    110.00
          1960-02-01    109.60
          1960-02-02    109.60
          1960-02-03    109.60
          1960-02-04    110.10
          1960-02-05    110.20
          1960-02-08    110.20
          1960-02-09    110.50
          1960-02-10    110.10
          1960-02-11    109.50
          1960-02-12    110.40
          1960-02-15    110.00
          1960-02-16    109.50
          1960-02-17    110.00
                         ...  
201812    2016-06-29    403.00
          2016-06-30    398.00
          2016-07-01    404.25
          2016-07-05    402.00
          2016-07-06    394.00
201912    2015-12-16    417.00
          2015-12-17    415.00
          2015-12-23    416.00

其中索引是分层的多索引.我想将滚动窗口平均值应用于每个合约,并将结果保存到新列中.

Where the index is a hierarchical multi-index. I'd like to apply a rolling window average to each contract, and save the results to a new column.

正确的方法是什么?

推荐答案

您要先groupby(level=0)然后rolling(n).mean()

s.groupby(level=0).rolling(10).mean()

这篇关于分组滚动平均值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆