我需要计算每个期间(或每个类别)的最大值的累积总和。查看嵌入的图像。
因此,首先,我需要找到每个类别/每年的最大值。然后,我要计算这些最大值的累积总和。我尝试通过设置最大度量值来进行尝试(第一步工作得很好-找到给定年份的每个类别/月的最大值),但后来我找不到找到累积总和的解决方案(发现累积最大值很容易,但是不是我要找的东西。
表1
Year Month MonthlyValue MaxPerYear
2016 Jan 10 15
2016 Feb 15 15
2016 Mar 12 15
2017 Jan 22 22
2017 Feb 19 22
2017 Mar 12 22
2018 Jan 5 17
2018 Feb 16 17
2018 Mar 17 17
所需的输出
Year CumSum
2016 15
2017 37
2018 54
答案 0 :(得分:0)
就小计而言,这与this question,this question和this question有点相似,但还包括一个累积成分。
您可以分两步执行此操作。首先,计算一张给出每年最大值的表格,然后使用累积总数模式。
CumSum =
VAR Summary =
SUMMARIZE(
ALLSELECTED(Table1),
Table1[Year],
"Max",
MAX(Table1[MonthlyValue])
)
RETURN
SUMX(
FILTER(
Summary,
Table1[Year] <= MAX(Table1[Year])
),
[Max]
)
以下是输出:
如果扩展到月份级别,则看起来像这样:
请注意,如果您只需要小计即可工作,则将每一行保留为最大值(15,22,17, 54 ),而不是最大值的累积和(15,37,54, 54 ),那么您可以使用更简单的方法:
MaxSum =
SUMX(
VALUES( Table1[Year] ),
CALCULATE( MAX( Table1[MonthlyValue] ) )
)
这将分别计算每年的最高金额,然后将它们加在一起。
外部参考:
答案 1 :(得分:0)