Tableau LOD详细级别表达式入门

本文是对include、exclude、fix函数的简单总结,示例使用的是Tableau自带的“超市-示例”数据。

include函数

include函数的作用是“维度增强”,类似于数据库中常用的 GROUP BY 函数,起到一个分组的作用。


include.png

首先解释一下表格,第一行是对include函数返回的结果取均值,第二行是直接拖拽对利润取均值,第三行是直接拖拽对利润求和。

为方便理解,首先看最简单的第三行,直接把“地区”拖拽到列上,把“利润”拖拽到行上就是第三行的结果。对Tableau自动进行的操作解释下就是把全部数据按“地区”分为六个组,再对每个组内的数据进行求和,也就求得了每个地区的利润的和。以“东北”地区为例,按地区分组后,有1685条数据是属于“东北”地区,这1685条数据中利润字段的和就是249240.

再看第二行,只需要再将“利润”拖到行上,将聚合方式切换为平均值即可。Tableau进行的操作和上一步基本相同,唯一不同的是在组内进行的是取均值运算。同样以“东北”地区为例,对东北地区的1685条数据取均值,即249240/1685 = 148.

最后是第一行,首先要创建计算书字段,在计算字段里输入以下代码{INCLUDE [类别]:SUM([利润])} ,创建成功后拖到行上,并将聚合方式切换为平均值即可,实现功能为先对利润按类别分组求和后再取均值。解释一下Tableau自动进行的操作:“类别”字段共有三个值,分别是“办公用品”、“技术”、“家具”。与直接取均值不同的是,Tableau首先将属于东北地区的1685条数据按着三个类别分成对应的三个组,对每个组求出一个和值,再对三个和值取平均,即进行以下运算(SUM(办公用品)+SUM(技术)+SUM(家具))/3 = SUM(东北地区)/3 = 249240/3 = 83080.

通过对比三部分,可以看到,include函数的作用是像数据库中的 GROUP BY 函数那样对数据先进行一次分组 ,再依次执行各级运算,就相当于在视图里增加了一级运算,即对视图进行了“维度增强”。假如你是一名老师,想计算班级所有学生的平均分,直接拖上去切换聚合方式为平均值即可,但如果你想计算的是以小组为单位,组与组之间的平均值,就需要用include函数指定“小组”维度,以小组为单位先执行一次SUM运算,得到每个组的总和,再对每个组的总分按平均值进行聚合。

exclude函数

exclude函数的作用是“维度削弱”,通俗讲就是从视图中减去指定的维度。


exclude.png

第一行表示的是东北地区不同类别下采用不同邮寄方式的订单的总利润。第二行表示的是对exclude函数的返回结果求和,exclude函数表达式为:{EXCLUDE [类别]: SUM([利润])}

通过对比两行可以看到exclude函数那一行忽视了“类别”维度,只考虑“地区-邮寄方式”这两个维度的组合。因为忽视了“类别”维度,所以可以看到第二行按类别划分的三个区域实际是完全相同的,后两个区域只是对第一个区域的复制。并且,将第一行每个类别符合“东北地区-标准级”这一维度组合的数据加起来,也就是45605+63042+34077 = 142723,恰好等于第二行每个类别下“东北地区-标准级”的数值,再次验证了exclude函数将“类别”维度排除的效果。

需要注意的是,使用exclude函数时,聚合的方式是由函数表达式中的聚合方式决定的,例如上个例子中表达式中写的是SUM([利润]),所以只能按总和来聚合,在标签上切换聚合方式是无效的(实际上是有效的,只不过每个最细级别下exclude函数只返回一个值,所以不管求和还是取平均,都还是那个值,聚合方式切换到计数,可以看到全部为1,说明确实只有一个值)。


exclude计数.png

fixed函数

fixed函数的作用是“指定维度”,能够明确指定按那个维度进行聚合,完全独立于视图中的可视化维度级别。


fix.png

这次互换了下“地区”和“类别”的顺序,先按类别分类,再按地区分类。为方便看清数字,只保留了“办公用品”和“家具”两个类别。

同样的,第一行是不同类别下不同地区的总利润,第二行是对fixed函数的返回值求和,fixed函数表达式为:{FIXED [类别]:SUM([利润])}

在这个视图中,第二行通过fixed函数指定了根据“类别”维度聚合,其他字段都对本行的聚合结果没有影响,也就是“地区”维度对于fixed函数来说相当于不存在。所以在这一行中,“类别”字段是有效的,于是两个类别间的数值是不同的,但“地区”字段没有被指定,是无效的,于是在类别内部不同地区之间的数值是相同的,而且等于此类别下不同地区的和,也就是对应类别的第一行数值的和值。

可以把“地区”标签拖走,可以看到上下两行的数值是相同的,而且办公用品还是752143,证明了通过fixed可以仅根据指定的维度进行聚合,而未指定字段对聚合无影响(只是会在视图上添加几个复制值而已)。


fix2.png
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,723评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,080评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,604评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,440评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,431评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,499评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,893评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,541评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,751评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,547评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,619评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,320评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,890评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,896评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,137评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,796评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,335评论 2 342

推荐阅读更多精彩内容