DAX:每天平均不同值

时间:2018-10-11 07:46:23

标签: powerbi dax

我有一些类别分散了几天。同一类别可能在同一日期出现多次。如何获得每天不同类别的平均数量?

数据集:

Date,Category
11.10.2018,A
11.10.2018,B
11.10.2018,C
12.10.2018,A
12.10.2018,A
12.10.2018,A
13.10.2018,B
13.10.2018,B

数据视图中的表格:

enter image description here

表格可视化:

enter image description here

我的尝试

使用dist = CALCULATE(DISTINCTCOUNT(Table1[Category]);DISTINCT(Table1[Date]))

,我每天可以获得不同的值作为度量

enter image description here

因此,我想得出的最后一个数据是上表中dist的平均值。但是,你是怎么做的?我尝试了1.67AVERAGEAVAREGEXVALUES的不同组合,但是没有运气。而且,我尝试越多,就越能使自己确信DAX是无用的(即使我深知它不可能)。谢谢您的任何建议!

1 个答案:

答案 0 :(得分:2)

使用SUMMARIZE计算每个日期的不重复计数,然后可以使用AVERAGEX遍历每个日期值:

dist:= 
IF ( 
    HASONEFILTER ( Table1[Date] ), 
    DISTINCTCOUNT ( Table1[Category] ), 
    AVERAGEX ( 
        SUMMARIZE ( 
            Table1, 
            Table1[Date],
            "Daily Average", DISTINCTCOUNT ( Table1[Category] )
        ),
        [Daily Average]
    )
)

编辑:您实际上并不需要IF函数-只需使用以下命令,它的效果似乎也是如此:

dist:= 
AVERAGEX ( 
    SUMMARIZE ( 
        Table1, 
        Table1[Date],
        "Daily Average", DISTINCTCOUNT ( Table1[Category] )
    ),
    [Daily Average]
)