按字符串分组/修复然后匹配不同的值

时间:2016-11-30 16:54:29

标签: tableau

我有一些像这样的数据(最后一列代表我想要的布尔输出):

Sample  index  date         Result
base    1      29/11/2016   True
base    1      29/11/2016   True
base    2      29/11/2016   False
base    3      30/11/2016   True
base    4      30/11/2016   False
test    1      29/11/2016   True
test    3      30/11/2016   True
test    4      29/11/2016   False

'结果'需要显示base和test是否在同一天共享一个索引值。

上面解释:

  1. 索引1出现两次Base,一次出现在Test中 - 因此为真

  2. 索引2只有一次出现在Base,没有用于Test - 因此为False     (即使有两个基地,它仍然是假的)

  3. 索引3有一个用于Base,一个用于Test - 因此为真

  4. 索引4有一个用于Base,一个用于Test但它们是不同的     日期 - 因此是假的。

  5. 我一直在摆弄LOD查询,但即使它看起来很简单,我也无法做出正面或反面。我一直盯着它看,有人可以帮忙吗?

    解决方案:根据Alex的回答,我使用以下内容来获取bool输出。索引是整数维度,日期是日期维度,Sample是字符串维度。

    {FIXED [Index],[Date]:MAX([Sample]="Base") AND max([Sample] = "Test")}
    

1 个答案:

答案 0 :(得分:1)

试试这个。

{ fixed index, date : max(Sample = "base) and max(Sample = "test") }

我目前无法测试,但认为这是创建一个显示FOR EACH索引和日期对的临时表,无论是否至少有一条记录包含Sample =" base& #34;和Sample =" test"

的一条记录

如果您在viz上的唯一维度是索引和日期,则可以通过使用聚合计算而不是LOD计算来简化 - 即删除冒号之前和之前的所有内容,并删除尾随}