计算每个股价随时间的滚动指数加权移动平均值

Calculating the rolling exponential weighted moving average for each share price over time

这个问题和我之前的问题很相似:

我有一个包含 2 列和 1 个索引的数据框 (df)。

索引是日期时间索引,格式为 2001-01-30 .... 等,索引按日期排序,有数千个相同的日期(并且是每月日期)。 A 列是公司名称(对应于日期),B 列是 A 列中公司名称在指数中的日期的股价。

现在每个日期的 A 列中都有多家公司,而且公司确实会随时间变化(因此数据无法完全预测)。

我想创建一个 C 列,其中包含特定公司价格的 3 天滚动指数加权平均值,使用 A 列中特定公司的当前日期和之前 2 个日期。

我试过几种方法都失败了。谢谢

尝试:

df.groupby('ColumnA', as_index=False).apply(lambda g: g.ColumnB.ewm(3).mean())