问题:
需要每3个月间隔显示RUNNING DISTINCT用户^^。 (参见目标表作为参考)。但是,即使在表计算或“WINDOW_COUNT”或“WINDOW_SUM”函数之后,“COUNTD”也无济于事。
^^ RUNNING DISTINCT用户表示DISTINCT用户在一段时间内(1月 - 3月,2月 - 4月等)。 COUNTD选项仅在窗口中有COUNT个DISTINCT用户。此过程应该超过3个月的时间来查找DISTINCT用户。
Original Table
Date Username
1/1/2016 A
1/1/2016 B
1/2/2016 C
2/1/2016 A
2/1/2016 B
2/2/2016 B
3/1/2016 B
3/1/2016 C
3/2/2016 D
4/1/2016 A
4/1/2016 C
4/2/2016 D
4/3/2016 F
5/1/2016 D
5/2/2016 F
6/1/2016 D
6/2/2016 F
6/3/2016 G
6/4/2016 H
尝试的方法:
步骤一步: 试图将问题分解为步骤,但由于tableau的列式特性,我无法在解决方案的最后阶段成功运行COUNT或SUM(任何聚合命令)。
第0步原始数据
此表显示结构数据,就像在原始表中一样。
第1步按MONTH计算用户名
该表按月显示用户数。您会注意到,因为用户B有两个条目,他被计算两次。在下一步中,我们使用DISTINCT COUNT来解决此问题。
第2步按月分类的DISTINCT COUNT
现在我们可以看到一个月内所有人都在场,下一步是看看MONTH运行DISTINCT COUNT 3个月
第3步运行3个月的DISTINCT COUNT
现在我们可以看到运行3个月的DISTINCT COUNT个用户名的SUM。如果将MONTH INTERVAL从3变为1,则可以看到STEP 2表。
最后一步问题步骤
目标:需要将GRAND TOTAL作为MONTH列的SUM。
请求:
我想计算' 1'的总和。由MONTH。但是,我正在使用WINDOW函数并聚合给我一个错误的数据。
我需要什么
Jan Feb March April May Jun
3 3 4 5 5 6
我做了什么
Jan Feb March April May Jun
1 1 1 1 1 1
尝试方法后的我的输出:附加的twbx文件。 DISTINCT_count_running_v1
提供帮助:
https://community.tableau.com/thread/119179;试过这种方法,但最后一步停留
https://community.tableau.com/thread/122852;使用此解决方案的某些部分
答案 0 :(得分:0)
我解决问题的方法是确定每个用户的最小登录日期,然后使用该日期计算不同的用户数。例如,我有data in this format。我创建了一个名为“最小用户登录日期”的计算字段,为{FIXED [User]:MIN([Date])},然后在“最小用户登录日期”上进行了CNTD(USER)以获取unique user count by date。如果要运行总计,则可以在CNTD(USER)字段上的运行总计上进行快速表计算。
答案 1 :(得分:-1)