You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于Index列按Asset分组计算Value差值的DAX实现求助

用DAX实现按Asset分组计算Value与前一Index的差值

你可以通过添加计算列来实现这个需求,以下是对应的DAX表达式:

Diff = 
VAR CurrentIndex = 'Table'[Index]
VAR CurrentAsset = 'Table'[Asset]
VAR PreviousValue = 
    CALCULATE(
        MAX('Table'[Value]),
        FILTER(
            'Table',
            'Table'[Asset] = CurrentAsset &&
            'Table'[Index] = CurrentIndex - 1
        )
    )
RETURN
    IF(CurrentIndex = 1, 0, 'Table'[Value] - PreviousValue)

公式说明:

  • CurrentIndex 和 CurrentAsset:分别存储当前行的索引值和资产类型,用于后续筛选匹配的历史数据
  • PreviousValue:通过CALCULATE+FILTER组合,筛选出同一资产下索引值比当前小1的行,获取对应的Value(由于每个Asset+Index组合唯一,用MAX/MIN/SUM均可,这里选MAX是为了避免空值报错)
  • 最终返回逻辑:如果当前索引是1,直接返回0;否则用当前行的Value减去前一索引对应的Value,得到差值

将上述公式添加到你的数据表中作为计算列,即可得到你期望的结果。

内容的提问来源于stack exchange,提问作者Matheus Assumpção Solinho

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 13:10:26