首页 > 解决方案 > Tableau - 姓名排名,按州/年/性别

问题描述

我有一个从社会保障网站下载的数据集。数据格式如下,包含Count姓名的流行度(即由 定义),按性别、年份和州划分:

State   Gender  Year    Name    Count   First Letter
  AK         F  1910    Anna      10    A
  AK         F  1910    Annie     12    A
  AK         F  1911    Annie      6    A
  AK         F  1912    Alice      5    A
  AK         M  1912    Wilbur     7    W
  AK         M  1912    Thomas     7    T

在 Tableau 中,我想按这些类别中的每一个(或所有如果未应用过滤器)排在前 X 个名称。但是,当我在可视化中使用Top过滤器时,过滤器生成的基础数据是以下形式:

在此处输入图像描述

例如,我需要排名第一的名字,并且能够使用过滤器来查看它是如何按年份、性别和状态变化的。我想这可以通过 LOD 表达式来完成,但不知道从哪里开始。

标签: tableau-api

解决方案


您可以在不需要 LOD 计算的情况下实现这一点。只需将您的过滤器从标准蓝色维度过滤器更改为上下文过滤器。为此,只需在过滤器窗格中右键单击过滤器,然后单击“添加到上下文”。过滤器将显示为灰色。现在所有排名将在过滤器被应用后计算

为什么这行得通?这与 Tableau 中的操作顺序有关。排名等计算是表格计算。顾名思义,计算是在应用维度过滤器之前对整个数据表进行处理的。但是,当某些内容是上下文过滤器时,它会创建临时表,然后用于计算表 cals。

在此处了解更多信息:https ://www.google.com.au/search?q=order+of+operations+tableau&oq=order+of+operations+tableau&aqs=chrome..69i57j0j69i65j0j69i65j0.3475j0j7&sourceid=chrome&ie=UTF-8


推荐阅读