0

我想建立一个度量来获得每天的简单移动平均值。我有一个带有单个表格的多维数据集,其中包含股票市场信息。

架构
架构

预期结果是,对于每个日期,此度量显示该日期前 X 天的收盘价平均值。

例如,对于日期 2013-02-28 和 X = 5 天,此度量将显示 2013-02-28、2013-02-27、2013-02-26、2013-02 天的平均收盘价-25,2013 年 2 月 22 日。将这些天的收盘值相加,然后除以 5。
对每一行都将执行相同的操作。

示例仪表板
示例仪表板

也许它可以仅使用函数来实现,tt..agg.mean()但在范围参数中指示那些 X 前几天。

问题是我不确定如何动态获取每个日期的前 X 天,以便我可以在度量中使用它们。

4

1 回答 1

0

您可以计算滑动平均值,您可以使用 attoti 文档https://docs.atoti.io/latest/lib/atoti.scope.html#atoti.scope.cumulative中引用的累积范围。

通过传递包含日期范围的元组,在您的情况下,("-5D", None)您将能够为数据中的每个日期计算过去 5 天的滑动平均值。

生成的 Python 代码将是:

import atoti as tt
// session setup
...
m, l = cube.measures, cube.levels
// measure setup
...
tt.agg.mean(m["ClosingPrice"], scope=tt.scope.cumulative(l["date"], window=("-5D", None)))
于 2021-09-29T13:33:38.907 回答