好的,所以我有这个数据集。
我想做的是检查学生达到6分或更高的平均尝试次数。到目前为止,我想到了:
Students = CALCULATE(DISTINCTCOUNT(StudentResults[studnr]);StudentResults[result]>=6)
每个班有多少名学生通过了考试。在SQL中,我将使用Group By和Haveing Max。如何在Power BI中实现这一目标?
答案 0 :(得分:0)
要计算学生获得课程成功成绩(> = 6)所需的平均尝试次数,我们需要将尝试总次数除以成功尝试的次数。
在计算尝试总数时,我们需要丢弃尚未导致成功结果的尝试,因为如果无法获得成功结果,您将无法计算获得成功结果的尝试次数
因此,伪公式为AVG #Attempts = (all attempts - #No Success Yet) / #Successful Attempts
这是三个基本指标:
All Attempts = COUNTROWS ( 'StudenResults' )
#Succesfull Attempts = COUNTROWS ( FILTER ('StudenResults', 'StudenResults'[result] >= 6))
#no succes yet =
SUMX (
'StudenResults',
CALCULATE (
IF ( MAX ( 'StudenResults'[result] ) < 6, 1, 0 ),
ALLEXCEPT ( 'StudenResults', StudenResults[studnr], StudenResults[course] )
)
)
此度量计算所需的平均值:
AVG #Attempts = DIVIDE([All Attempts] - [#no succes yet], [#Succesfull Attempts], BLANK ())
一个矩阵图形,在[行]上具有[课程],在[值]上具有度量,如下所示:
如果您想要每个学生的平均值,只需将[studnr]放在Rows而不是[course]