使用FIXED的Tableau计算字段

我从Excel文件中的Tableau中有一个数据库。 数据库中的每一行都是两年内为不同主题乐园提供的一张票(分配给客户的一个ID)。

结构如下:

在这里输入图像说明

每个身份证可以购买不同的公园(或几次同一个公园)的门票,也可以在不同的年份。

我无法做的是标记在两个不同年份在同一个公园的客户(例如,客户004已经去过2016年和2017年的公园a)。

如何在Tableau中创build此计算字段?

(我设法解决这个在Excel中与一个sumproduct fucntion,但数据库有超过50万行,并在一段时间后崩溃/加我想要使用计算的字段,以防万一我用一个新的公园或更新的Excel文件更新年)

理想情况下,我认为产出的结构应该如下(但是我会对不同的观点持开放态度,只要我得出结果):与两个不同年份访问过同一个公园的客户相关联。

在这里输入图像说明

创build一个名为customer_park_years =的计算字段

{ fixed [Customerid], [Park] : countd([year]) } 

您可以在filter货架上使用它,仅包含customer_park_years> = 2的数据

然后,您将只能看到与访问多年来访问特定公园的那些客户相关的数据。 如果你也想看看他们在其他公园的行为,你就必须调整你的方法,而不是简单地过滤掉其他数据。 变化取决于你的问题的细节。

但要回答你的具体问题,这应该是一个简单的方法。

请注意,对于非常大的数据集,countd()可能很慢,但是它可以在不重构数据的情况下回答问题,所以它往往是一个很好的折衷。

尝试这个 !

 IFNULL(str({fixed [Customerid],[Park]:IF sum(1)>1 then 1 ELSE 0 END}),'0')