首页 > 解决方案 > pandas `rolling` 不知道自己的功能

问题描述

如果我有一个pandas系列foofoo.mad()计算平均绝对偏差foo。因此,人们可能会认为这foo.rolling(10).mad()将计算滚动平均绝对偏差,类比为foo.rolling(10).std()。但是当我这样做时,我得到一个属性错误:'Rolling' has no attribute 'mad'. 有没有一种规范的方法来处理它(对于特定的功能mad来说,自己动手并不难,因为它做了一些非常简单的事情,但在道德上似乎是错误的)

标签: pythonpandas

解决方案


对于尚未有相应rolling实现的 Series 方法,请使用rolling.apply,例如:

foo.rolling(10).apply(pd.Series.mad)

推荐阅读