Tableau 九、计算字段与表计算:粒度、聚合与比率

1.计算字段基础

概念、类型、创建、使用、编辑

概念

计算字段是根据数据源字段(包括维度、度量、参数等等),使用函数和运算符来构造公式,从而定义的字段。

跟其他字段一样,计算字段也能拖放到各个功能区里面来构建视图,还能构建新想计算字段。

计算字段的返回值分为数值型、字符型等等。

打开“全球超市订单数据.xlsx”

Tableau 九、计算字段与表计算:粒度、聚合与比率

如果创建了一个新的计算字段,计算字段会加入数据源字段中。

类型

计算字段有三种类型

  • 基本计算字段。对日期、数值和字符进行常规操作。
  • 详细信息级别表达式,又称为LOD。
  • 表计算。

创建和使用

在工作表1,创建基本计算字段【成本字段】

成本是销售额-利润。

【分析】——【创建计算字段】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

还有种创建计算字段方式是在【度量】下的空白处右击【创建计算字段】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

修改计算字段名称为【成本】,将【销售额】拖入,输入-,将【利润】拖入,点击确定。

可见计算字段对话框里有“计算有效”,如果有错,会红色提醒。

Tableau 九、计算字段与表计算:粒度、聚合与比率

双击【国家/地区】,将【成本】拖到【颜色】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

修改【成本】颜色。

Tableau 九、计算字段与表计算:粒度、聚合与比率

【成本】下拉三角——【度量】——【平均值】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

创建有逻辑关系的基本字段——【盈利标志】

盈利标志就是如果利润>0,则盈利;利润< 0 ,则亏损。

【度量】下的空白处右击【创建计算字段】

计算名称为“盈利标志”

逻辑关系为

IF SUM([利润])>0 THEN "盈利"ELSE "亏损"END

注意:

  • 表达式单词最好使用大写字母。
  • 不分行也可以运行,鼓励分行,这样逻辑比较清晰
  • IF语句里必须要有END,否则会报错。

Tableau 九、计算字段与表计算:粒度、聚合与比率

计算字段对话框的右边给出了解释和示例。

Tableau 九、计算字段与表计算:粒度、聚合与比率

点击【确定】,创建了【盈利标志】字段。

回到【数据源】,可以看到有【成本】和【盈利标志】字段。

Tableau 九、计算字段与表计算:粒度、聚合与比率

复制工作表1 ,拖走【成本】,将【盈利标志】拖到【颜色】上。

Tableau 九、计算字段与表计算:粒度、聚合与比率

编辑

右击【盈利标志】——【编辑】,可以编辑计算字段。

Tableau 九、计算字段与表计算:粒度、聚合与比率

2.粒度、聚合与比率

粒度

新建工作表,创建散点图。

将【利润】拖到【列】,将【销售额】拖到【行】,将【市场】拖到【颜色】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

粒度概念源于散点图,表示数据的颗粒浓度。

将【国家/地区】放到【详细信息】里,发现粒度更浓。

Tableau 九、计算字段与表计算:粒度、聚合与比率

要显示最大浓度,则点击【分析】——【聚合度量】,显示数据源每条记录的利润与销售额的关系。

Tableau 九、计算字段与表计算:粒度、聚合与比率

聚合

聚合分两种

  • 度量聚合
  • 维度聚合
度量聚合

多数使用的是度量聚合。

新建工作表4,将【利润】拖到【列】,【总和(利润)】里的总和就是对利润的度量聚合。

Tableau 九、计算字段与表计算:粒度、聚合与比率

点击下拉三角——【度量】,可以见到各种度量聚合。

Tableau 九、计算字段与表计算:粒度、聚合与比率

维度聚合

将【产品ID】拖到【列】中。

Tableau 九、计算字段与表计算:粒度、聚合与比率

点击下拉三角——【度量】,可以见到4种度量聚合。

Tableau 九、计算字段与表计算:粒度、聚合与比率

默认聚合

可以设置默认聚合属性。

右击【利润】——【默认属性】——【聚合】,选择聚合方式,则下次聚合时自动更新默认的聚合方式。

Tableau 九、计算字段与表计算:粒度、聚合与比率

比率

右击【维度】下【类别】——【分层结构】——【创建分层结构】,命名为类别。

将【子类别】和【行ID】拖入到【类别】下边。

Tableau 九、计算字段与表计算:粒度、聚合与比率

创建计算字段【利润/销售额】如下:

Tableau 九、计算字段与表计算:粒度、聚合与比率

创建计算字段【sum(利润)/sum(销售额)】如下:

Tableau 九、计算字段与表计算:粒度、聚合与比率

比较利润/销售额 和sum(利润)/sum(销售额)的区别

将【度量名称】拖到【筛选器】,勾选如下,点击【确定】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

将【度量名称】放到【列】,将【类别】放到【行】,并下钻到【子类别】。

选择视图为【适合宽度】。

将【度量值】放到【文本】。

调整【度量值】下三个字段的顺序如下:

Tableau 九、计算字段与表计算:粒度、聚合与比率

下钻【行】里的【子类别】到【行ID】。

右击【度量值】下的【总和(利润/销售额)】——【设置格式】,修改数值格式为百分比。

右击【度量值】下的【聚合(sum(利润)/sum(销售额))】——【设置格式】,修改数值格式为百分比。

可以发现在下钻到【行ID】时,利润/销售额)=sum(利润)/sum(销售额)

Tableau 九、计算字段与表计算:粒度、聚合与比率

但在【子类别】这个层级,就发现利润/销售额)不等于sum(利润)/sum(销售额)。

为什么不相等?因为聚合方式不同。利润/销售额是对每个行ID的利润/销售额的比率求和,是先算行ID的比率,再求和。

sum(利润)/sum(销售额)是先对利润求和,销售额求和,在两者相除,这才是正确的比率。

所以在计算比率的时候,一定要注意聚合方式。

Tableau 九、计算字段与表计算:粒度、聚合与比率

3.详细级别表达式

详细级别表达式是稍微复杂点的计算字段。

查看数据

新建工作表5。

双击【国家/地区】。

将【利润】拖到【颜色】,将【利润】拖到【标签】。

右击颜色和标签的【总和(利润)】——【度量】——【平均值】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

右击标签的【总和(利润)】——【设置格式】,在【货币(自定义)】里,修改小数位数为0,前缀里输入“美元”符号(用搜狗输入法打出美元两字,会出现美元符号)。

Tableau 九、计算字段与表计算:粒度、聚合与比率

查看数据。悬浮在阿根廷国家上面,点击【查看数据】标志,或右击阿根廷国家地区——【查看数据】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

点击【摘要】,可以看平均值。

Tableau 九、计算字段与表计算:粒度、聚合与比率

点击【完整数据】,可以看详细值。

数据里计算产品的利润平均值,是按照每个订单的产品价格总和/产品数量计算的,但是忽略了产品类型。

比如1支笔是1美元,1个手机是99美元,计算利润平均值是50美元。但实际上两者类型不一样,应该按产品类型计算,平均收入应该是100美元。

Tableau 九、计算字段与表计算:粒度、聚合与比率

创建详细级别表达式

复制工作表5,重名为“平均每单利润”。

一是需要汇总每笔订单利润。

二是对所有国家和地区取平均。

汇总每笔订单利润

在【度量】下空白处右击【创建计算字段】,计算字段名称为“订单利润”

详细级别表达式为{INCLUDE [订单 ID]: SUM([利润])}

其中

  • 详细级别表达式是涵括在{}里面的。
  • INCLUDE为关键字
  • [订单 ID]是对应的维度。
  • : 是对详细级别的声明。
  • SUM([利润])为表聚合表达式。

Tableau 九、计算字段与表计算:粒度、聚合与比率

将【平均值(利润)】的颜色和标签拖走。

将【订单利润】拖到【颜色】和【标签】上。

右击颜色和标签的【总和(订单利润)】——【度量】——【平均值】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

可见阿根廷的平均利润有所变化。

Tableau 九、计算字段与表计算:粒度、聚合与比率

FIXED和INCLUDE区别

详细级别表达式有三个关键字:

  • INCLUDE:在其他任何维度的基础之上使用指定的维度计算。
  • FIXED:使用指定的维度计算值,不参考视图中的其他任何维度。
  • EXCLUDE :忽略指定的维度,即使在视图中使用了该维度也是要被忽略。

同样计算订单利润,对法国和比利时,使用FIXED进行计算,得出的值是不管对于哪个国家,只根据订单ID计算所有产品的利润,法国和比利时的订单利润是一样的。

使用INCLUDE,是针对法国和比利时,对同一个订单分别进行计算,分出相应的利润值。

4.表计算

表计算包括两种:

  • 快速表计算
  • 自定义表计算

4.1快速表计算

复制工作表4,重命名为【快速表说明】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

右击【利润】——【创建】——【计算字段】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

命名为【利润2】,点击【确定】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

右击【度量名称】——【编辑筛选器】,勾选【利润2】和【销售额】,点击【确定】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

调整【度量值】下各字段的顺序,将【利润】和【利润2】放在一起。

Tableau 九、计算字段与表计算:粒度、聚合与比率

可见快速表计算的字段如下

  • 汇总
  • 差异
  • 百分比差异
  • 合计百分比
  • 排序
  • 百分位
  • 移动平均
  • 复合增长率
  • 年度同比增长
  • YTD总计
  • YTD增长
汇总

右击【利润2】——【快速表计算】——【汇总】

Tableau 九、计算字段与表计算:粒度、聚合与比率

【总和(利润2)】出现三角符号,说明进行了表计算。

【汇总】的意思就是累加。

Tableau 九、计算字段与表计算:粒度、聚合与比率

差异

右击【利润2】——【快速表计算】——【差异】。

差异默认是当前值减去上面的值。

Tableau 九、计算字段与表计算:粒度、聚合与比率

右击【利润2】——【相对于】,可以计算是相对于上一个、下一个、第一个或最后一个的差异。

Tableau 九、计算字段与表计算:粒度、聚合与比率

百分比差异

右击【利润2】——【快速表计算】——【百分比差异】

右击【利润2】——【相对于】——【第一个】

这样得出的就是每个值减去第一个值,然后再除以第一个值,从而得出的百分比。

Tableau 九、计算字段与表计算:粒度、聚合与比率

合计百分比

右击【利润2】——【快速表计算】——【合计百分比】

就是所有值相加求出总和,然后用当前值除以总和。

Tableau 九、计算字段与表计算:粒度、聚合与比率

排序

右击【利润2】——【快速表计算】——【排序】

按从大到小的顺序进行排名。

Tableau 九、计算字段与表计算:粒度、聚合与比率

百分位

右击【利润2】——【快速表计算】——【百分位】

按从大到下的顺序排名,最大的是100%,最小的是0%,其他的按照排名的线性比例分隔。

Tableau 九、计算字段与表计算:粒度、聚合与比率

移动平均

右击【利润2】——【快速表计算】——【移动平均】

移动平均一般用于股票市场上,默认三个值相加的平均值,下面计算就是当前值和当前值上面两个值相加的平均值。

Tableau 九、计算字段与表计算:粒度、聚合与比率

其他

【复合增长率】和【年度同比增长】是和时间相关的,用到的不多。

4.2自定义表计算

真正从事数据分析的人才能用的上【自定义表计算】。

做一个利润按月移动的平均值。

新建工作表7。

右击空白,【创建计算字段】,字段名为【按月移动平均值】,右侧提示选择【表计算】

左侧输入公式WINDOW_AVG(SUM([利润]),-2,0)

SUM([利润])是表达式,

-2,0是从当前值开始往上两个值。

点击【默认表计算】

Tableau 九、计算字段与表计算:粒度、聚合与比率

选择【订购日期】和【订购日期 月】,点击【确定】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

可见计算字段里多了一行字,点击【确定】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

将【度量名称】移到【筛选器】,点击【无】,勾选【利润】和【按月移动平均值】,点击【确定】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

将【度量名称】拖到【列】,将【订购日期】拖到【行】,将【度量值】拖到【文本】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

点击【行】里的【订购日期】,选择【月】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

右击【总和(利润)】——【快速表计算】——【移动平均】,可见两列的值是相等的。

右击【总和(利润)】——【清除表计算】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

创建参数

创建参数,从而动态的调整平均值。因为现在只能看3个月的平均值,但我们想看2个月、4个月或其他个数月份的平均值,就像需要参数。

右击空白处——【创建参数】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

参数名称是【N月移动平均】,选【整数】【2】【自动】,选择【范围】,最小值为1, 最大值为12,步长为1, 点击【确定】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

右击【按月移动平均】——【编辑】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

将公式里开始值2去掉,将参数【N月平均移动】拖入,点击【确定】。

Tableau 九、计算字段与表计算:粒度、聚合与比率

右击【N月移动平均】——【显示参数控件】,在右侧显示了显示参数控件,可移动按钮,选择移动月数。

注意,显示参数控件下面显示的数字是从当前值往前推N个月,如果显示4,则往前推4个月,加上当前值,共5个月的平均值。

Tableau 九、计算字段与表计算:粒度、聚合与比率

显示参数控件的数字调整为2,右击【总和(利润)】——【快速表计算】——【移动平均】。可见两列的值是相等的。

Tableau 九、计算字段与表计算:粒度、聚合与比率

上一篇:Tableau 巴西世界杯(八)红黄牌


下一篇:5大知名的BI工具对比介绍