DAX 按测量结果分组
DAX grouping by a measure result
在此处需要一些帮助使用 DAX 对 PowerBI 中的视觉对象的测量结果进行分组。我有一个 table 显示某些客户的所有访问(访问 table)。我有一个计算每天访问次数的度量,并且我有一个日期切片器(访问日)。此度量的结果通常介于 1 和 10 之间。我试图查看每年的客户访问频率。如果他们有
1 = single visit
3 or more visits = returning customer
7 or more visits = frequent customer.
我正在尝试使用饼图/圆环图来显示一年内客户的细分。我相信这是可能的,但我遗漏了一些东西。如有任何帮助,我们将不胜感激!
Customer_id Visit_date Purchase_total
以上是访问的示例table。还有一种方法使用 DAX 来获取每天的总访问量。 (有些顾客在一天内多次光顾 [visits_day]。)
在饼图中按度量分组有点棘手,因为您不能将度量放入例如图例框,如果您希望根据您的切片器选择更改分组,则不能使用计算列。
这是一种可能的解决方法:
首先,为您的类别桶创建一个新的 Buckets
table。
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
table(应用任何切片器过滤)日期范围。然后,我们计算有多少客户落入当前饼图部分,方法是只为摘要中 table 的客户添加 1
,其桶与当前饼图桶匹配(否则为 0
)。
注意:此衡量标准根据您选择的日期对您的客户进行了分类。如果您不关心这一点并且只需要在固定时间段内计算它们的类别(即您不希望您的日期切片器更改它们所属的存储桶),那么您可以只使用计算列而不是需要创建一个新的 table.
在此处需要一些帮助使用 DAX 对 PowerBI 中的视觉对象的测量结果进行分组。我有一个 table 显示某些客户的所有访问(访问 table)。我有一个计算每天访问次数的度量,并且我有一个日期切片器(访问日)。此度量的结果通常介于 1 和 10 之间。我试图查看每年的客户访问频率。如果他们有
1 = single visit
3 or more visits = returning customer
7 or more visits = frequent customer.
我正在尝试使用饼图/圆环图来显示一年内客户的细分。我相信这是可能的,但我遗漏了一些东西。如有任何帮助,我们将不胜感激!
Customer_id Visit_date Purchase_total
以上是访问的示例table。还有一种方法使用 DAX 来获取每天的总访问量。 (有些顾客在一天内多次光顾 [visits_day]。)
在饼图中按度量分组有点棘手,因为您不能将度量放入例如图例框,如果您希望根据您的切片器选择更改分组,则不能使用计算列。
这是一种可能的解决方法:
首先,为您的类别桶创建一个新的 Buckets
table。
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
table(应用任何切片器过滤)日期范围。然后,我们计算有多少客户落入当前饼图部分,方法是只为摘要中 table 的客户添加 1
,其桶与当前饼图桶匹配(否则为 0
)。
注意:此衡量标准根据您选择的日期对您的客户进行了分类。如果您不关心这一点并且只需要在固定时间段内计算它们的类别(即您不希望您的日期切片器更改它们所属的存储桶),那么您可以只使用计算列而不是需要创建一个新的 table.