举个栗子!Tableau 技巧(177):在同一文本表中,查看 Top N 数据的主要构成
在实际分析场景中,很多时候其实并不用关注所有数据。需要引起注意的,往往只有那些排名靠前或靠后的数值。比如零售企业会关心哪些产品更畅销、制造企业会关心哪些设备容易出故障。
之前我们分享过 🌰 :如何用颜色 突显 前N项和后N项,已经可以解决上述问题。
但是,如果想要了解:不同的畅销产品中,各自的主要消费者是谁;高故障的制造设备中,哪些零部件最容易出问题。该怎么办呢?
我们用一个示例:查看销售额 Top 3 子类别中贡献最大的 10 个客户(如下图),来抛砖引玉。
这里,分享两种常用的实现方法,一睹为快吧!
本期《举个栗子》,我们要给大家分享的 Tableau 技巧是:在同一文本表中,查看 Top N 数据的主要构成。
为方便学习,栗子使用 Tableau 自带的“示例-超市”数据源。掌握栗子方法后,数据粉可尝试使用自己的数据。
具体步骤如下:
方法一:筛选器+Rank 函数
Step 1.创建视图
打开 Tableau Desktop,连接“示例-超市”数据源,新建工作表。
将字段“子类别”拖放至行,将“销售额”拖放至“标记”卡的文本中。单击 按钮,让数据按销售额降序排列。此时,可以看到 Top 3 的子类别分别是:书架、器具和椅子。
将“子类别”拖放至“筛选器”卡,在弹出的对话框中,依次选择“顶部”-“按字段”,顶部设置为:3,销售额选择:总和,然后单击“确定”。
文本表中只剩下销售额 Top 3 的子类别数据。
再将“客户名称”拖放至行,降序排列后,可以查看所有客户销售额从大到小的数据。
Step 2.创建计算字段
接着,创建计算字段。右键单击度量中的“销售额”,在下拉菜单中选择“创建”-“计算字段”。
将计算字段命名为:客户贡献销售额排名,键入函数
RANK(SUM(销售额))
单击右下角的“默认表计算”,将“根据一下因素计算”一栏中选择为:客户名称。
Step 3.设置筛选器
将“客户贡献销售额排名”拖放至“筛选器”卡,在弹出的对话框中,将值范围选择为:1-10。
如此,就可以直观查看销售额 Top 3 子类别的 Top 10 客户了。
方法二:Rank_Dense+Rank函数
Step 1. 创建视图
具体步骤与方法一的 Step 1 相同。
Step 2. 创建计算字段
创建计算字段“客户贡献销售额排名”,并将其拖放至“筛选器”卡,并选取范围为:1-10。具体步骤与方法一的 Step 2 和 Step 3 相同。
再创建一个计算字段,右键单击度量中的“销售额”,在下拉菜单中选择“创建”-“计算字段”。将计算字段命名为:子类别销售额排名,键入函数
RANK_DENSE(SUM({ FIXED [子类别]:SUM([销售额])}))
Step 3. 设置筛选器
将刚刚创建的计算“子类别销售额排名”拖放至“筛选器”卡,在弹出的对话框中,将选取范围设置为:1-3。
右键单击“筛选器”卡上的“子类别销售额排名”胶囊,在下拉菜单中,选择:计算依据-客户名称。
如此,也可以直观查看销售额 Top 3 子类别的 Top 10 客户了。
栗子 Tips
如果要增加其他筛选器,比如年份,查看所选年份的Top N 时,方法一和方法二会有所区别:
- 如果可以将年份添加到上下文,那两种方法都可以;
- 如果有其他计算的限制,不能将年份添加到上下文,方法一就不适用了,并且方法二也需要在 LOD 函数中增加年份。
今天的 Tableau 技巧,你 Get 到了吗?赶快试试看吧!