Tableau 中组维度项的计数

Count of group dimensions item in Tableau

我是 tableau 的新手,遇到了以下问题。以下是我正在使用的数据示例。

Customer No | Item
___________________
 1            A
 1            B
 2            A
 3            A
 4            A
 4            B
 5            B
 6            A

我正在尝试统计有多少客户购买了商品 A 和 B。到目前为止,我尝试通过组合 A 和 B 来单独分组,但我得到的总结果是 8。我还尝试了做计算,我得到了相同的结果 8。有人可以为我指明如何获得此结果的正确方向吗?谢谢!

这是我想要得到的结果:

Item| Count
A             5
B             3
A and B       2

我重新创建了您的确切数据集并将其粘贴到 Tableau 以便您可以看到几个示例。

您可以通过以下方式查看购买单个商品的客户数量,以及同时购买这两种商品的客户数量。

您的计算结果为:

IF { FIXED [Customer No]: COUNTD([Item]) } = 1 THEN
    [Item]
ELSE
    'Both A and B'
END

并且您需要将视图设置为如下所示:

您可以通过以下方式查看这两件商品的购买时间。

  1. 布尔或 您要使用的计算是:

    ATTR([ITEM]) = 'A' 或 ATTR([ITEM]) = 'B'

并且您需要将视图设置为如下所示:

  1. A、B 或两者 如果您希望结果更具体一些,您可以尝试:

    IF ATTR([Item]) = 'A' 那么 'A' ELSEIF ATTR([Item]) = 'B' 然后 'B' 别的 'BOTH' 结束

用新的计算替换以前的计算如下所示:

  1. 超过 1 项 如果购买的具体商品无关紧要,您可以使用此逻辑。

    COUNTD([项目]) > 1

用这个替换之前的计算看起来像:

  1. 超过 1 个项目使用 window 函数(可能有点矫枉过正) 您需要使用的计算是:

    WINDOW_COUNT(COUNTD([项目]))

因为这是一个 Window 函数,我们需要指定它是如何在我们的维度上计算的。为此,请单击药丸右侧的向下箭头,然后 select 编辑 Table 计算...

然后您需要设置这些设置:

我会将我们在第一个示例([A 和 B])中创建的计算添加到筛选器架子并且 select 正确。那应该给你一些看起来像的东西:

  1. 超过 1 个项目使用详细级别表达式 这个例子的计算是:

    { 排除 [项目]:COUNTD([项目]) }

您将看到如下所示:

如您所见,Tableau 非常灵活。希望这些示例对您有所帮助!

您可能想使用 Tableau 的设置功能来解决此类问题。

例如,右击数据面板(即左侧边栏)中的[客户编号]字段,然后选择“创建集”命令。单击设置面板顶部的“全部使用”,然后单击 条件 选项卡。使用条件 MAX([Item] = “A”) 定义集合。将集合命名为“购买 A 的客户”。

类似地,创建一组购买了商品 B 的客户。然后您可以 select 在数据窗格中创建两个集合,并创建一个组合集作为交集,即同时购买了商品 B 的客户项目 A 和项目 B。

您可以将集合视为属于该集合的字段成员的数学集合(即一组客户 ID)或为数据源中的每个数据记录定义的布尔函数,指示是否该数据记录与该集合相关联(即一个布尔函数,它对交易进行操作以说明关联的客户 ID 是否在该集合中。对于此处使用的条件公式要记住的关键是条件是一个聚合公式,对客户ID的数据记录块进行操作,以确定客户ID是否在集合中。

一旦您定义了您感兴趣的集合,您就可以以多种方式使用它们 - 在计算字段中,作为过滤器,作为可视化中货架上的维度,在集合操作中,与其他集合结合......

要定义一个计算集合中客户的度量,创建一个计算字段,例如“[Num A Customers]”作为COUNTD(if [Customers who bought A] then [Customer ID] end)对您感兴趣的任何其他集合执行相同的操作。然后您可以使用这些度量(可能使用度量名称和度量值)来制作您的可视化。