将计算列添加至视图
有时,您的数据可能没有分析所需的所有信息。处理此操作的常见方法是创建对现有数据进行修改的计算列(也称为计算字段或只是计算)。可以通过打开“分析”菜单并选择 “创建计算字段...”来创建计算。
请务必注意,对于计算字段,通常有几种不同的方法来实现相同的结果。此外,计算的正确值可能取决于数据的调整方式以及可视化项的设置方式。在确定如何编写计算时,请确保您了解您的数据结构以及可视化项的构建方式。
计算何时可能有用的示例
合并名字和姓氏
您可能在两个不同的列中具有名字和姓氏,并且需要为姓名使用单一字段。
计算:
[First name] + " " + [Last name]
完成的可视化项应如下所示
在字符串内查找序列
您可能需要标记产品 ID 字段中具有特定制造代码 XYZ 的每条记录。
如果代码存在,则计算将返回“true”,否则返回“false”。
CONTAINS([Product ID}, "XYZ")
完成的可视化项应如下所示,具有针对“Color”(颜色)的计算。
为值范围分配类别
您希望基于多个阈值分配类别。
该计算将根据截止值评估每个学生的 GPA,并分配一个标签。
IF [GPA] <3 THEN "Needs Improvement" ELSEIF [GPA] <3.5 THEN "Sufficient" ELSE "Excellent" END
完成的可视化项应如下所示,具有针对“Color”(颜色)的计算。
计算百分比变化
您希望显示从 1 岁到 2 岁儿童体重的同比 (YoY) 变化百分比。
此计算用于计算每个儿童的差异/原始值。
(SUM((IF [Age] = 2 THEN [Weight] ELSE 0 END)) - SUM((IF [Age] = 1 THEN [Weight] ELSE 0 END)))/SUM(IF [Age] = 1 THEN [Weight] ELSE 0 END)
完成的可视化项应如下所示。
在这个示例中,根据数据的结构,计算可能会有很大的变化。举例来说,如果有一个 1 岁体重和 2 岁体重的字段,则计算只需为 ([2 岁体重] - [1 岁体重]) / [1 岁体重]。但是,上面详细介绍的数据结构更标准,更可能遇到。
继续操作:创建 YOY 计算
目标
创建如下所示的视图,该视图在前两列中显示两年的销售额结果,然后在第三列中显示年度变化百分比。该方案使用 Tableau Desktop 附带的示例 - 超市数据源说明如何生成可视化项。
创建必需的计算字段
连接到示例 - 超市数据源。
选择“分析”>“创建计算字段”以打开计算编辑器。将计算命名为“2013”,并在公式区域中键入或粘贴以下内容:
IF YEAR([Order Date]) = 2013 THEN [Sales] ELSE 0 END
创建第二个计算字段并将其命名为“2014”;除了字段名为 2014 而不是 2013 之外,公式是相同的:
IF YEAR([Order Date]) = 2014 THEN [Sales] ELSE 0 END
创建第三个计算字段“YOY Pct.Change”,以计算 2013 年至 2014 年的变化:
(SUM([2014]) - SUM([2013])) / SUM([2013])
设置计算字段的格式
在“数据”窗格的“度量”区域中单击“2013”,然后选择“默认属性”>“数字格式”。
在“默认数字格式”对话框中,将格式设置为“货币(自定义)”,并将“小数位数”设置为“0”。
以完全相同的方式设置“2014”度量的格式。
将“YOY Pct.Change”字段的格式设置为具有 2 位小数的“百分比”。
构建视图
将“2013”拖到“标记”卡的“文本”上。
双击“2014”,然后双击“YOY Pct.Change”。
将“度量名称”从“行”拖到“列”。
将“Sub-Category”(子类)拖到“行”。
您的视图现在看起来应该像本部分开头的那个视图。