首页 > 解决方案 > 在 Spotfire 中滚动过去 3 个月的平均列

问题描述

在此处输入图像描述我正在尝试计算过去 3 个月的滚动平均值。我坚持这个计算,无法弄清楚如何使用逻辑将它注入到spotfire中。

第一个月(2 月)将使用 recovery% 作为 wip% + recovery% 的乘数

第二个月 (mar) 将得到 (feb) 的平均值并乘以 wip% +recovery%

第 3 个月 (apr) 将得到 (feb , mar) 的平均值并乘以 wip% + recovery%

4 个月(5 月)将获得(2 月、3 月、4 月)的平均值并乘以 wip% +recovery%

我的最终目标是创建一个滚动平均 3 个月的列,用于条形图和交叉表。很感谢任何形式的帮助。谢谢你。

附样品表 样本数据表

标签: spotfire

解决方案


使用下面的代码它给了我不同的结果。前 2 个月(2 月和 3 月)没有数据,而且我获得的 3 个月滚动的平均值包括当前月份,3 个月滚动将从上个月开始。

(Sum([WIP]) / Sum([Assy Input]) * Sum([Recover]) / Sum([Input])) + (Sum([Recover]) / Sum([Input]))
THEN Avg([Value]) OVER (LastPeriods(3,[Axis.Rows])) THEN If(Count() OVER (LastPeriods(3,[Axis.Rows]))=3,[Value],null) as [3 mos Rolling]

推荐阅读