Power Bi - 从表中获取最后 X 行的平均值

时间:2021-05-24 13:19:06

标签: powerbi powerquery calculated-columns measure

我目前正在学习自己,Power Bi。但是,当我试图根据最后 X 行而不是过滤最后 X 行来总结结果时,我陷入了困境。为了更好地理解这里是我创建的表:

table, th, td {
  border: 1px solid black;
}
Table name: Exampe<br><br>
<table><tbody><tr><th>Period</th><th>Value</th></tr><tr><td>2021 - W1</td><td>56.48%</td></tr><tr><td>2021 - W2</td><td>54.58%</td></tr><tr><td>2021 - W3</td><td>61.18%</td></tr><tr><td>2021 - W4</td><td>61.86%</td></tr><tr><td>2021 - W5</td><td>18.18%</td></tr><tr><td>2021 - W6</td><td>89.81%</td></tr><tr><td>2021 - W7</td><td>52.85%</td></tr><tr><td>2021 - W8</td><td>41.69%</td></tr><tr><td>2021 - W9</td><td>18.18%</td></tr><tr><td>2021 - W10</td><td>75.54%</td></tr><tr><td>2021 - W11</td><td>61.48%</td></tr><tr><td>2021 - W12</td><td>48.48%</td></tr></tbody></table>

我关注的结果应该是基于最后 6 行而不是整个列行的平均百分比。因此,我最终使用了“Measure”,因为我无法在 Power BI 中为此找到预构建功能。我的公式如下:

Measure = Calculate(Average(Exampe[Value],TOPN(6,Exampe,[Value],Desc)

但是,输出不正确。如果您能帮助我理解我做错了什么以及为什么公式给出了错误的输出,我将不胜感激。提前致谢!

1 个答案:

答案 0 :(得分:1)

假设你有如下表格,你想得到最后 6 行的平均值,即 750

enter image description here

为了达到平均最后 6 行,首先需要在查询编辑器中创建索引列,然后使用以下措施可以达到预期的输出 750

Measure = CALCULATE(AVERAGE(Sheet1[Value]),
            FILTER(ALL(Sheet1),Sheet1[Index] <= MAX(Sheet1[Index])
                 && Sheet1[Index] >MAX(Sheet1[Index]) -6))

Power Bi 中的表是这样的,带有索引列,如果有帮助,请接受:) enter image description here