Tableau api Tableau:选择属性级别并获取和相交,而不是并集

Tableau api Tableau:选择属性级别并获取和相交,而不是并集,tableau-api,Tableau Api,我有一些文本,对于每一个文本,我在一列中附加了一些标记。数据看起来像 Text_ID, Token 1, energy 1, debit 1, flat 2, energy 2, house 3, energy 3, debit 我根据countd(Text\u ID)创建了一个度量来计算不同文本/Text\u ID的数量。现在,将所有内容以明显的方式放在工作表上,并选择/过滤一些标记,基本上给了我一个联合 我想选择能量和借记,并在这里得到正确的计数2而不是3。当然,我有很多令牌,因此所描述的

我有一些文本,对于每一个文本,我在一列中附加了一些标记。数据看起来像

Text_ID, Token
1, energy
1, debit
1, flat
2, energy
2, house
3, energy
3, debit
我根据
countd(Text\u ID)
创建了一个度量来计算不同文本/Text\u ID的数量。现在,将所有内容以明显的方式放在工作表上,并选择/过滤一些标记,基本上给了我一个联合

我想选择能量和借记,并在这里得到正确的计数2而不是3。当然,我有很多令牌,因此所描述的方法是不可伸缩的

有没有关于如何进行的建议?
我假设我需要在这里创建两个参数,但我不知道如何使用它们进行正确筛选。

创建两个参数字段以选择所需的值,创建公式并添加以下代码:

{ FIXED  [Text ID]:
SUM(IF [Token] = [Parameter 1]
or [Token] = [Parameter 2]
THEN 1
ELSE 0
END)}

您似乎想要标识文本ID,其中至少有一个数据行包含示例中的一个指定标记“energy”,并且至少有一个数据行包含示例中的另一个指定标记“debt”。如果这就是问题所在,那么我建议使用如下集合

  • 定义两个参数,以允许用户指定他们感兴趣的令牌,例如,token_1和token_2
  • 使用条件
    MAX([Token]=Token_1)和MAX([Token]=Token_2)

  • 您可以以多种不同的方式使用该集合。如果要计算集合中不同文本Id的数量,请创建一个名为Selected_text_Id的计算字段,作为
    如果[Selected_text],则[text_Id]end
    ,它保存匹配文本的文本Id,其他文本为空。然后您可以绘制COUNTD([Selected_Text_Id])来回答原始问题。

    还是
    正确,还是应该是
    。这种方法还可以扩展到3种或更多的组合,这很好。文本ID后面的逗号是什么意思?抱歉,您可以删除
    ,它应该是
    ,因为您需要遍历行。因此,您的建议是,根据此度量创建一个过滤器,仅当总和(每个文本ID)为2(或参数计数)时才会“触发”,对吗?然而,在我的示例中,这种方法的缺点是必须选择两个不同的“令牌”。我的意思是我可以在这里添加一个
    ,如果Param 1=Param 2,那么2
    。对此有何评论?抱歉,我没听清楚。如果您创建了两个参数,那么将选择两个不同的令牌,并且您在数据库中的字段包含一个令牌,如果它包含多个令牌,则有不同的方式,基本上数据库中数据的存储方式将决定公式谢谢,这似乎也缓解了上文我对湿婆回答的评论中所述的
    Param1=Param2
    问题。不过,我稍后会对此进行调查。