间隙/孤岛问题,连续几天标记为重置

问题描述 投票:0回答:1

希望在此论坛上从 Power BI 专家那里获得一些帮助。我有一个数据表,我正在尝试获取 Power BI 中的“目标结果”列。

日期 账户 旗帜 目标结果
1/3/23 ABC 1 1
1/3/23 防御 1 1
1/3/23 GHI 1 1
1/3/23 JKL 1 1
1/4/23 ABC 1 2
1/4/23 防御 0 0
1/4/23 GHI 0 0
1/4/23 JKL 1 2
1/5/23 ABC 1 3
1/5/23 防御 1 1
1/4/23 GHI 0 0
1/4/23 JKL 1 3

通过谷歌搜索,我相信这是一个标准的间隙和岛屿类型问题,但是,鉴于我不太擅长 DAX,我似乎无法调整我发现的适合我的用例的内容。

从表中可以看出,目标结果列将计算特定帐户的 Flag = 1 的连续天数,但如果帐户的 Flag 列重置为 0,则重置为 0。例如帐户 ABC 23 年 1 月 5 日显示 3,因为每一天的 Flag = 1,但 DEF 在同一天显示 1,因为该帐户在 23 年 1 月 4 日的 Flag = 0,并且当 Flag 时,目标结果在 23 年 1 月 5 日 = 1 = 1.

我不太确定从哪里开始,所以非常感谢任何帮助。 非常感谢。

powerbi gaps-and-islands
1个回答
0
投票

尝试:

Target Result = 
  var curD = [Date]
  var curA = [Account]
  var lastReset = CALCULATE(MAX([Date]), ALL('Gap'), 'Gap'[Account] = curA && 'Gap'[Date] <= curD && 'Gap'[Flag] = 0)
  var result = CALCULATE(COUNTROWS('Gap'), ALL('Gap'), 'Gap'[Account] = curA && 'Gap'[Date] > lastReset && 'Gap'[Date] <= curD)
  RETURN COALESCE(result, 0)
© www.soinside.com 2019 - 2024. All rights reserved.