Tableau 优课堂 | 第21课:实现 Top N 筛选

published: 2023-05-04

欢迎观看由优阅达制作的【优课堂】系列视频。第二十一节课是:实现 TOP N 筛选,你可以下载本视频所用数据集同步实操。


如果我们想要按各区域的销售额来筛选前10位产品,则此分析可从两方面解释:所有产品中的前10个产品在各区域的排名如何(情景1),或各区域中哪些产品排名在前10位(情景2)。


筛选 TOP 10

  • 情景一:查看全部产品在各区域的销售排名情况

这个情景题相当简单。在当前视图中,右键单击“筛选器”功能区中的“产品 ID”胶囊,并选择“编辑筛选器”,然后单击打开“顶部”选项卡。

从设置中,我们可以看到视图是根据销售额总和筛选出前 10 个产品 ID。

  • 情景二:如何查看在各区域排名前十位的产品?

但如果尝试回答第二个情景题:在各区域,哪些产品排在前 10 位。那么,我们就需要构建另一个视图:将“地区”字段放置在“筛选器”功能区中,并选择所感兴趣的任意地区(此处为西北)。

但是,此视图似乎会做出不正确的响应。尽管是按销售额总和筛选出前 10 位产品 ID,但我们只看到四行。归根结底,这是关于如何运行筛选的问题。

  • Tips:如何运行筛选?

如果你熟悉 SQL,应该了解,筛选条件是通过"AND"的语句写入"WHERE"查询子句中,然后记录需满足返回的全部条件。

如下图所示,顶部条形图的筛选运行规则是:默认在所有产品中按销售额总和筛选出前 10 位。让我们来深入梳理一下运行筛选的思路:

(1)如何根据地区进行筛选?

如果我们需按照地区进行筛选,则筛选项必须也是选定地区内销售的产品。

如底部条形图所示,在前 10 位产品中,有十分之六并非属于西北地区的销售范围内,则筛选结果就只会呈现出 4 个产品。这回答了上述第二个情景题中视图为何没有正确筛选。

(2)如何得到单个地区销售额前 10 位的产品数据?

如果仅希望筛选出西北地区的前 10 位产品,则设置会稍微复杂点。我们需要指示 Tableau,必须先考虑地区因素,再计算出前 10 位的产品数据。

为此,可以考虑将“地区”设置为上下文筛选器。但使用此方法,在我们依次查看各个地区数据的情况下很难进行更改。


使用 INDEX 函数筛选 TOP 10

如需单独分析各地区前 10 位的产品数据,则可以通过 INDEX 计算,基于各地区范围内的销售额总和来设置产品的排序。

这基本上会将"AND"的条件从筛选条件中移除,并使用排序代替。

右键单击“数据”窗格空白处,选择“创建计算字段”。将此计算字段命名为“排序”。在公式区域,输入 INDEX(),单击确认。

在“数据”窗格中,右键单击刚创建好的“排序”字段,选择“转换为离散”。请注意,此步骤非常关键。

然后,将“排序”字段拖拽到“行”功能区,将其放置在“地区”和“产品ID”字段之间。

右键单击“行”功能区上的“排序”字段胶囊,选择“编辑表计算”。

在对话框中,我们需要指示 Tableau 如何计算。换句话说,我们希望 Tableau 如何分配排序。

  • 计算依据:选择特定维度;

  • 寻址字段:选择“地区”和“产品ID”,确保首位筛选字段是“地区”;

  • 所在级别:选择“产品ID”,因为我们希望按产品 ID 分配排序;

  • 重新启动间隔:设置为“地区”,因为我们希望重新计算各地区的排序;

  • 排序顺序:选择自定义,“销售额”字段,聚合方式是总和。因为我们希望,按销售额总和筛选出前10位产品。且我们希望降序排序,单击确认。

可以从视图中看到,排序已正确分配。

为了验证选定地区是否正确显示筛选结果,我们需要设置筛选器。将“地区”字段加到“筛选器”功能区中,仅勾选“西北”。

请注意,排序计算取决于地区计算。如果不先按地区筛选,就无法按排序筛选。比如,可能有四个产品的销售额都排在第一位,每个地区一个。

因此,我们必须指示 Tableau,首先希望查看哪个重新启动间隔(此例为地区)。

按住 Ctrl 键(Win),将“行”功能区上的“排序”胶囊拖放到“筛选器”功能区中。由于我们之前已在此胶囊编辑过表计算,因此必须复制此胶囊,实现同一设置下的条件筛选。

选择1-10,对视图进行排序。

现在,由于按区域进行排序,我们获得了有关西北地区销售额前10位产品的数据。如果我们希望更改要查看的地区,只需添加快速筛选器。


使用参数自定义 TOP N 筛选

如果我们希望筛选前 N 位,让用户自己设置临界值,该怎么做呢?这可以通过维度筛选器的顶部选项和一个参数实现。

如图所示,将“产品 ID”字段拖放到“筛选器”功能区,在对话框中打开“顶部”选项卡。选择“按字段”,该字段已默认设置为按“销售额总和”。

单击打开值条件下拉列表,选择“创建新参数”,而非在此处设置固定值。我们以“前 N 位”命名该参数,其他设置保持不变。

参数控件将自动显示在视图右侧,我们只需拖动滑块,即可调整希望查看的前 N 位产品。



以上就是关于「实现 TOP N 筛选」的全部内容。感谢观看本视频,更多 Tableau 学习资源,请关注微信公众号“优阅达大数据生态”。


更多相关信息,请访问专题页: Tableau使用入门教程