Powerbi 双滚动平均功率
我试图参考论坛和其他关于堆栈溢出的问题,但找不到与我类似的问题 我使用以下DAX计算了30天移动平均线(我刚刚从Quick measure重新修改了原始的时间智能滚动平均线计算) 当我使用它时,我的移动平均图显示了未来30天,如下所示 那么如何排除未来时间呢 我甚至在这里尝试过这个@JTBR2解决方案 但它也不起作用Powerbi 双滚动平均功率,powerbi,Powerbi,我试图参考论坛和其他关于堆栈溢出的问题,但找不到与我类似的问题 我使用以下DAX计算了30天移动平均线(我刚刚从Quick measure重新修改了原始的时间智能滚动平均线计算) 当我使用它时,我的移动平均图显示了未来30天,如下所示 那么如何排除未来时间呢 我甚至在这里尝试过这个@JTBR2解决方案 但它也不起作用 非常感谢您的帮助。尝试使用以下公式: Rolling12MonthsSum = var Ldate = date(max('Year'[Year]) , max('Mont
非常感谢您的帮助。尝试使用以下公式:
Rolling12MonthsSum =
var Ldate = date(max('Year'[Year]) , max('Month'[Monthnumber]),1)
//Last date
var Fdate = EDATE(Ldate,-11) //First date
var pm_hrs = sum(Query1[pm_hrs])/sum(Query1[acthrs]) //Calculation
return
if(min('Date'[Date])<fdate,
blank(),
if(min('Date'[Date])>Ldate,
blank(),
pm_hrs))
滚动12个月SSUM=
var Ldate=日期(最长('年'[年]),最长('月'[月号]),1)
//最后日期
var Fdate=EDATE(Ldate,-11)//第一个日期
var pm_hrs=总和(Query1[pm_hrs])/总和(Query1[acthrs])/计算
返回
如果(最小日期[日期])l日期,
blank(),
下午(小时)
现在我使用它12个月,你可以用天数和平均数代替。只需将-11改为-1,它将给出精确的一个月数据输出
您需要创建一个“日期”表或“日历”表来实现此目的。
希望这有帮助 我猜您的日期表中有未来的日期。您应该能够添加一个条件,不显示今天之后的日期,如下所示:
30DayQuickMeasureRollingAvg =
VAR __LAST_DATE = LASTDATE('DateTable'[Date].[Date])
VAR RollingAverage =
AVERAGEX(
DATESBETWEEN(
'DateTable'[Date].[Date],
DATEADD(__LAST_DATE, -30, DAY),
__LAST_DATE
),
CALCULATE(DISTINCTCOUNT('UserTable'[userID]))
)
RETURN IF(__LAST_DATE > TODAY(), BLANK(), RollingAverage)
我能够理解一切,但Query1[pm_hrs]和Query1[acthrs]究竟是什么?这些是我用于计算KPI的表格“Query1”中的列。在计算区域,你可以给你自己的可变名称,就像我给pm_hrs一样,因为我从所选月份开始计算12个月的%pm小时。这是一个非常简单的更改。谢谢哦,不!我刚刚意识到,当我倾向于点击任何月份(在另一张图中)时,图表(滚动平均值)正在变成直线。为什么会这样?如何解决这个问题?例如,移动平均值在所有4个月内都是正常的(如上图),如果我点击任何一个月(如2月),移动平均值将显示一条完整的直线。这听起来像是一个不同的问题。请分开张贴。非常感谢你的问题和伟大的提示。我刚试过这个,效果很好。只需补充一点,在使用上述代码的最后一天之后,我还有一天的时间。但是如果我把它改为u LAST_DATE>=TODAY(),那么它就工作得很好。所以希望它能有所帮助
30DayQuickMeasureRollingAvg =
VAR __LAST_DATE = LASTDATE('DateTable'[Date].[Date])
VAR RollingAverage =
AVERAGEX(
DATESBETWEEN(
'DateTable'[Date].[Date],
DATEADD(__LAST_DATE, -30, DAY),
__LAST_DATE
),
CALCULATE(DISTINCTCOUNT('UserTable'[userID]))
)
RETURN IF(__LAST_DATE > TODAY(), BLANK(), RollingAverage)