我有一个从论坛挖掘的帖子和主题的详细信息表。行是单个主题(即postID和subjectIS是表的主键),然后我在主题级别有一些度量,有些在后级别。例如:
+---------+-------------+--------------+------------+--------------+--------+
| post.ID | post.Author | post.Replies | subject.ID | subject.Rank | year |
+---------+-------------+--------------+------------+--------------+--------+
| 1 | mike | 10 | movie | 4 | 1990 |
| 1 | mike | 10 | comics | 6 | 1990 |
| 2 | sarah | 0 | tv | 10 | 2001 |
| 3 | tom | 4 | tv | 10 | 2003 |
| 3 | tom | 4 | comics | 6 | 2003 |
| 4 | mike | 1 | movie | 4 | 2008 |
+---------+-------------+--------------+------------+--------------+--------+
我希望按年度研究帖子和主题的趋势,并按subject.Rank
对其进行着色。
第一次很容易测量,将COUNTD(post.ID)和COUNTD(subject.ID)放在行中,将'year'放在列中。 但是如果我在Color中拖动MEDIAN(subject.Rank),我得到了一个错误的结果:它不是在不同的subject.ID级别计算,而是在行级别计算。
我想我可以使用表格计算功能完成它,但我不知道如何继续。
答案 0 :(得分:1)
听起来您正在尝试将Subject.Rank视为维度,而不是作为衡量标准。如果是这样,只需右键单击该字段并选择维度,即可将其转换为相关工作表上的维度。您还可以通过将“度量”部分中的字段拖动到“维度”部分,将其转换为数据窗格中的维度。这将告诉Tableau将来默认将该字段视为维度。
在某些情况下,字段可以被视为维度,而在其他情况下可以视为度量。取决于你想要达到的目标。如果您熟悉SQL,则使用维度来使用GROUP BY子句对数据行进行分区以进行聚合。
最后,对于大型数据集,count distinct(COUNTD)可能很昂贵。通常,您可以通过另一种方式获得相同的结果。因此,在您真正需要时,请尝试考虑其他方法并保存COUNTD。
答案 1 :(得分:0)
尝试使用{fixed [1st LEVEL],[2nd level]:median()} 要么 表计算方法 当你输入中位数时,在预先计算下有一个编辑表计算使用你把字段放在那里(确保它按你想要的方式排序,当你选择它们时)然后点击确定选择在哪个级别并重新开始