DAX按测量结果分组

时间:2018-09-04 15:03:29

标签: grouping powerbi dax measure

在这里需要一些帮助,以便使用DAX在PowerBI中将视觉测量结果分组。我有一个表,显示某些客户的所有访问(访问表)。我有一个衡量每天访问量的指标,并且有一个日期切片器(访问日)。该度量的结果通常在1到10之间。我试图查看每年客户访问的频率。如果有

1 = single visit
3 or more visits = returning customer
7 or more visits = frequent customer.

我正在尝试使用饼图/甜甜圈图显示一年内客户的细分情况。我相信这是可能的,但我缺少一些东西。任何帮助将不胜感激!

Customer_id          Visit_date      Purchase_total   

以上是“访问”表的示例。还有一种使用DAX的方法来获取每天的总访问量。 (某些客户在给定的一天[visits_day]内多次出现。)

1 个答案:

答案 0 :(得分:1)

在饼图中按度量进行分组有些棘手,因为您无法将度量放入例如“图例”框,并且如果要根据切片器的选择更改分组,则不能使用计算列。

这是一种可能的解决方法:

首先,为您的类别存储桶创建一个新的Buckets表。

Bucket
------
single visit
returning customer
frequent customer

Buckets[Bucket]列将在“图例”部分中使用。

对于“价值”部分,我们需要一种新的衡量标准:

Count of Visits =
VAR Summary =
    SUMMARIZE (
        Visits,
        Visits[Customer_id],
        "Bucket", SWITCH (
            TRUE (),
            COUNTROWS ( Visits ) >= 7, "frequent customer",
            COUNTROWS ( Visits ) >= 2, "returning customer",
            COUNTROWS ( Visits ) = 1, "single visit"
        )
    )
RETURN
    SUMX ( Summary, IF ( [Bucket] = SELECTEDVALUE ( Bucket[Bucket] ), 1, 0 ) )

此度量汇总了当前的Visits表(应用了切片器过滤功能),方法是根据每个客户在您选择的日期范围内访问的次数将他们放入三个存储桶之一。然后,我们仅通过为汇总表中存储区与当前饼图存储区匹配的客户添加1(属于0的客户)来统计落入当前饼图部分的客户数量。


注意:此度量对您选择的日期的客户进行了分类。如果您不在乎,只需要计算固定时间段的类别(即,您不希望日期切片器更改其所属的存储桶),则可以使用计算列代替需要创建一个新表。