Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powerbi 功率查询中的滚动平均_Powerbi - Fatal编程技术网

Powerbi 功率查询中的滚动平均

Powerbi 功率查询中的滚动平均,powerbi,Powerbi,我是一个完全的新手权力BI 我试图在Power BI的Power Query编辑器中重现这种类型的计算 屏幕截图来自Excel,在C列中使用AVERAGE($B$2:B2),下一行是AVERAGE($B$2:B3),以此类推 C2=((168+313)/2)=241 C3=((168+313)+301)/3)=261 等等 有没有一种方法可以在Power Query中执行这种类型的计算 您可以在当前日期之前使用平均值函数 作为计算列,它的外观如下所示: AvgPresented = CALCU

我是一个完全的新手权力BI

我试图在Power BI的Power Query编辑器中重现这种类型的计算

屏幕截图来自Excel,在C列中使用AVERAGE($B$2:B2),下一行是AVERAGE($B$2:B3),以此类推

C2=((168+313)/2)=241

C3=((168+313)+301)/3)=261

等等

有没有一种方法可以在Power Query中执行这种类型的计算


您可以在当前日期之前使用平均值函数

作为计算列,它的外观如下所示:

AvgPresented = 
CALCULATE(
    AVERAGE(
        Table1[CallsPresent]),
        ALL(Table1),
        Table1[FullDate] <= EARLIER(Table1[FullDate]
    )
)
AvgPresented=
算计(
平均值(
表1[当前调用],
全部(表1),

表1[FullDate]在Power Query M语言中,您可以执行类似的操作。筛选当前行日期之前(包括当前行日期)的行,然后对
CallsPresent
列求平均值

= List.Average(
      Table.SelectRows(
          #"[Previous Step Name Here]",
          (C) => C[FullDate] <= [FullDate]
      )[CallsPresent]
  )
=列表。平均值(
Table.SelectRows(
#“[此处的上一步名称]”,
(C) =>C[FullDate]
语法有点棘手,但基本上,它允许我将我们正在操作的表中的
FullDate
#“[Previous Step Name Here]”“
)与当前步骤中的
FullDate
进行比较。查看更多相关信息。

此视频帮助我: 它在excel中,但Power Query部分实际上与Power BI工具完全相同


(差不多晚了2年,但这可能会帮助其他人。)

这是DAX吗?在Power Query Editor中,我得到“Expression.Error:名称‘AVERAGEX’无法识别。请确保拼写正确。”.就像我说的,我是一个真正的BI新手。是的,我可能误解了这个问题。DAX确实不同于查询编辑器M语言。这也可以在查询编辑器中完成,但有什么理由需要在那里完成吗?Alex,为了澄清问题,我遗漏了很多列。最后,数据被取消,并且列名变成行名,它们以矩阵形式显示。这很好。DAX和M在未插入的数据上都比数据透视更好。你是说在计算平均值后需要进行数据透视吗?太棒了,Alexis!!它工作得很好。请你解释一下代码,我不太理解“[此处的前一步名称]”和(C)= C[FultDeal]……以及所有这一切在这个问题上的作用。是考虑CultDead列的方法吗?从“FultDead”列中的新年开始,重新开始滚动平均计算…谢谢。
= List.Average(
      Table.SelectRows(
          #"[Previous Step Name Here]",
          (C) => C[FullDate] <= [FullDate]
      )[CallsPresent]
  )