从零开始Tableau | 9.计算字段

 

计算字段让tableau的分析具有很强的灵活性。本节记录要点:

  • 运算符
  • 创建计算字段
  • 主要函数

运算符

运算符是一个符号,可以对对数字、字符串、日期等进行数学或逻辑操作,要使用计算字段和函数,必须先了解tableau支持的运算符以及每个运算符的运算逻辑和运算顺序。

常规运算符

图:常规运算符
图:常规运算符

逻辑运算符

图:逻辑运算符
图:逻辑运算符

运算符优先级

tableau中的运算符在进行运算时,彼此间存在优先顺序,如下图所示,第一行具有最高优先级,最后一行的优先级最低。

同一行中的运算符具有相同优先级。在两个运算符具有相同优先级的情况下,则在公式中从左向右进行计算。

可以根据需要使用括号,括号中的运算符优先于括号外的运算符进行计算,从最内部的括号开始向外计算。

图:运算符优先级
图:运算符优先级

创建计算字段

计算字段是使用函数和运算符构造公式,对数据源字段(包括维度、度量、参数等)进行重新定义的字段。它是原始数据源中没有,由使用者创建出来的新字段。

这里使用”超市“数据的”客户排序表“,该表将所有客户销售额按照从高到低的顺序进行了可视化,现在需要将客户按照”利润“大小分为”高利润客户“和”低利润客户“两类,并在视图中用颜色进行区分,就要用到计算字段。

具体分为两步:第一步是创建”客户利润类型“计算字段;第二步是将创建的计算字段可视化。

图:客户销售额排序
图:客户销售额排序

Step01 在“数据”窗口的任意字段上,通过鼠标右键创建计算字段。

图:创建计算字段示例
图:创建计算字段示例

Step02 进入“计算字段”编辑界面。

  • ① 命名区,可以对计算字段进行命名。这里命名为“客户利润类型”。
  • ② 公式编辑区,在这里可以根据分析需要,对计算字段的公式进行编辑。
  • ③ 函数区,可以搜索和选用tableau自带的各种函数,以满足计算字段的公式编辑需要。
  • ④ 注释区,对选中的函数进行描述,并给出具体事例,以帮助使用者更好的理解和应用函数。
图:计算字段编辑界面
图:计算字段编辑界面

Step03 编辑计算字段公式。初始需求是以客户的利润为基础,选定一个临界值,将高于临界值的称为“高利润客户”,低于临界值的称为“低利润客户”。因此,这里选用“IF”函数,以15000元作为临界值,判断客户利润是高还是低,并据此对客户进行分类。

图:计算字段公式编辑示例
图:计算字段公式编辑示例

Step04 将创建的“客户利润类型”计算字段拖动到“标记卡”的“颜色”,在”客户排序表“上实现“客户利润类型”的可视化。

图:"客户利润类型"可视化示例
图:"客户利润类型"可视化示例

主要功能函数

计算字段主要依赖各种类型的函数,tableau中的函数分为数字函数、字符串函数、日期函数等十余种类型。

图:tableau主要函数类型
图:tableau主要函数类型

数字函数

数字函数主要用于数值计算,这些函数只接受数字作为参数。下面列举了部分常用的数字函数。

图:常用数字函数
图:常用数字函数

实操:ABS()函数

以“利润”字段为例,使用ABS函数创建名为“ABS利润”的计算字段,图中可以看到,由于ABS函数是返回绝对值,因此部分产品的利润变为了正值。

图:ABS函数示例
图:ABS函数示例

字符串函数

字符串函数主要用于字符串的操作。下面列举了部分常用的字符串函数。

图:常用字符串函数
图:常用字符串函数

实操:Contains()函数

以“产品名称”字段为例,使用Contains函数查找产品名称中包含“标签”的产品。使用Contains()函数创建名为“Contains标签”的计算字段,图中可以看到,新的计算字段返回两个值,产品名称包含“标签”的为“真”,不包含的为“伪”。

图:Contains函数示例
图:Contains函数示例

聚合函数

聚合函数通常用于对一组值执行计算。下面列举了部分常用的聚合函数。

图:常用聚合函数
图:常用聚合函数

实操:COUNTD()函数

以“产品名称”字段为例,用COUNTD函数创建名为“产品数量”的计算字段,统计各个地区分别销售了多少种产品。

图:COUNTD函数示例
图:COUNTD函数示例

逻辑函数

逻辑函数通常用于执行逻辑测试。下面列举了部分常用的逻辑函数。

图:部分常用逻辑函数
图:部分常用逻辑函数

实操:IF()函数

以“销售额”字段为例,用IF函数创建名为“销售额区间”的计算字段,统计订单记录中,各个销售额区间的订单记录数量分别有多少。

图:IF函数示例
图:IF函数示例

日期函数

日期函数常用语涉及日期的计算。下面列举了部分常用的日期函数。

图:部分常用日期函数
图:部分常用日期函数

实操:DATEDIFF()函数

以“订单日期”和“发货日期”字段为例,用DATEDIFF函数创建“订单响应时间”的计算字段,反映每个客户每年的订单中。最大响应时间分别是多少。具体分为三步:

Step01 创建“订单响应时间”计算字段。

图:"订单响应时间"计算字段示例
图:"订单响应时间"计算字段示例

Step02 创建客户订单响应时间视图。

图:订单响应时间视图示例
图:订单响应时间视图示例

Step03 调整“订单响应时间”计算字段的聚合方式。tableau默认的聚合方式是“总和”,在这里表示的是每个客户订单响应的总时间,如果要反映每个客户订单的最大响应时间,则需要将聚合方式更改为“最大值”。

图:更改聚合方式示例
图:更改聚合方式示例

Step04 根据需要,选用合适的图形对最大订单响应时间进行可视化,这里用二维表进行展现。

图:最大订单响应时间示例
图:最大订单响应时间示例

函数是tableau中非常强大的工具,其种类丰富,数量众多,可以很好满足日常分析需要。这里仅列举了几个简单函数,目的是熟悉计算字段的操作,初步掌握函数在计算字段中的使用方式。虽然接触tableau的时间不长,但我也深刻感受到了函数的强大能力,不过,我觉得对函数的学习还是要建立在实践基础上,针对工作或学习中遇到的某个分析需求,再去查找和深入研究选择哪个函数、哪种方式来解决问题,这样学习函数的效率会更高,过程不枯燥,效果会更好。


猜你喜欢

转载自blog.csdn.net/springyang2015/article/details/82635119