数据可视化-Tableau Prep Builder 零基础入门指南

Tableau Prep 可以理解成是 Tableau Desktop 的前置工具,主要用于数据清洗,本质是轻量级 ETL 工具(Extract-Transform-Load,抽取- 转换-加载),但比传统 ETL 工具简单太多,不用写复杂代码,全程可视化操作。
本文摘自 Tableau帮助 的 Tableau prep Builder 入门指南,但由于原文机翻味太重且文字冗余,故重新修改编写方便观看。
Tableau 本身是上手非常快的bi工具,所以不用教程大概也能学好,但是也可以根据这个教程一步一步来就是了。
Tableau Prep Builder 入门指南
本教程将讲解Tableau Prep的常见操作,我们将使用软件自带的样本数据集,演练如何为示例Superstore创建数据处理流程。教程基于最新版本的Tableau Prep Builder。
若要在继续本教程之前安装 Tableau Prep Builder,请参见 Tableau Desktop 和 Tableau Prep Builder 部署指南中的通过用户界面安装 Tableau Desktop 或 Tableau Prep Builder(链接在新窗口中打开)。也可以下载免费试用版(链接在新窗口中打开)。
示例文件
若要完成本教程中的任务,先从这些链接下载示例文件,并创建一个 Samples 目录和一个 South 子目录。
下载链接:
https://help.tableau.com/current/prep/zh-cn/prep_get_started.htm
|
下载到 Samples 目录 |
下载到 South 子目录 |
|---|---|
|
|
背景故事
你在大型零售连锁店总部工作,老板需要分析公司过去四年的产品销售额与利润,你使用Tableau Desktop完成分析,并负责前期数据准备。整理数据时发现,各区域数据已通过其他方式收集,但分散在不同文件中,部分区域甚至按年拆分文件,手动清理耗时费力。此时你想到Tableau Prep可高效完成数据清理任务,于是下载免费试用版(链接在新窗口打开)开始操作。
1.连接到数据
打开 Tableau Prep Builder 时,您首先看到是一个带有“连接”窗格的开始页面,就像 Tableau Desktop 一样。

-
在“连接”窗格上,单击“添加连接”

按钮。
在 Web 制作中,从“主页”中单击“创建”>“流程”,或从“浏览”页面中单击“新建”>“流程”。然后单击“连接到数据”。
-
文件是 .csv 文件,因此请在连接列表中选择“文本文件”。导航至Orders South子目录,选择orders_south_2015.csv单击添加到流程。连接成功后,Tableau Prep Builder工作区将自动打开,分为顶部「流程」窗格和底部「输入」窗格:


提示:对于单个表,Tableau Prep 会在您将数据添加到流程时自动为您在“流程”窗格中创建输入步骤。否则,您可以使用拖放功能将表添加到“流程”窗格。
-
「流程」窗格:核心工作区,可直观交互数据、构建流程。
-
「输入」窗格:包含数据摄入配置选项,同时显示数据字段、数据类型及值的示例。
-
-
合并南部其他3个订单文件:「输入」窗格点击「表」>「合并多个表」,系统自动识别同目录文件,点击「应用」完成合并。
-
添加其他区域文件:按住Ctrl/Cmd键,选中Orders_Central.csv、Orders_East.xlsx、Orders_West.csv,拖放到「流程」窗格即可。


2.浏览数据
选中输入步骤可预览字段、数据类型及值,便于排查问题。大型数据集会自动引入样本,需调整样本大小可在「数据样本」选项卡操作。
在“流程”窗格中,当你选择每个步骤并查看每个数据集时,你注意到需要稍后修复的一些问题,以及一个可立即在输入步骤中修复的问题。
Orders_West 输入步骤
-
“State”(州)字段使用州名称的缩写。其他文件则使用完整拼写。有许多以“Right_”开头的字段。这些字段似乎与其他字段重复。
-
点击「字段列表」按钮,切换到字段列表视图。

-
选中所有以“Right_”开头的字段,将光标悬停在任意选中字段上,点击「移除」(X图标),即可排除这些字段。
-

提示:在步骤中执行清理操作(比如移除字段)时,Tableau Prep 会在“更改”窗格中跟踪操作,并在“流程”窗格中(以小图标的形式)添加注释。对于“输入”步骤,也会向每个字段中添加注释。
Orders_Central 输入步骤
在“流程”窗格中,单击“Orders_Central”输入步骤将其选定。在“输入”窗格中,你注意到以下问题:
-
-
订单日期和发货日期在字段中已针对月、日和年分开。
-
某些字段的数据类型与其他文件中相同字段的数据类型不同。
-
“Region”(区域)没有字段。
-
Orders_East 输入步骤
选择“Orders_East”输入步骤。
字段与其他文件一致,但「Sales」(销售额)字段包含货币代码,Tableau Prep将其解读为字符串,需后续修复数据类型并移除货币代码。
排查完数据问题后,下一步将深入清理数据,为合并操作做准备。
3.清理数据
Tableau Prep中,数据检查与清理是反复优化的过程。确定需处理的数据集后,通过添加步骤应用清理、调整、合并等操作,不同操作对应不同类型的步骤(如清理步骤用于筛选、合并、拆分字段,聚合步骤用于分组聚合)。
提示:向流程中添加步骤时,会自动添加一条流程线将步骤相互连接在一起。你可以将这些流程线四处移动,并根据需要移除或添加流程线。
清理 Orders_Central
-
在“流程”窗格中,选择“Orders_Central”,执行以下操作:
-
单击加号

图标并添加清理步骤。


A. “流程”窗格、B. 工具栏、C. “配置”窗格、D. 数据网格
工作区现在分为三个部分:“流程”窗格、带工具栏的“配置”窗格和“数据”网格。
其中「配置」窗格显示数据结构,将字段值汇总到数据桶,便于快速查看异常值和空值;「数据」网格显示行级详细数据。
2.使用计算字段清理数据
该数据集缺少Region字段,需通过计算字段添加,确保与其他数据集一致:
-
在工具栏点击「创建计算字段」。
-
将字段命名为“Region”,输入公式 "Central"(含引号),点击「保存」。

3. 合并日期字段
需将拆分的订单日期、发货日期字段,分别合并为单一字段(格式MM/DD/YYYY),操作如下(以订单日期为例):
-
点击工具栏「创建计算字段」,命名为“Order Date”。
-
输入公式:
MAKEDATE([Order Year],[Order Month],[Order Day])
点击「保存」。
4.移除原有拆分字段
在「配置」窗格搜索框输入“Order”,快速定位Order Year、Order Month、Order Day三个字段;按住Ctrl/Cmd键选中这三个字段,右键点击选择「移除字段」。


按上述步骤重复操作,合并Ship Year、Ship Month、Ship Day为“Ship Date”字段,并移除拆分的发货日期字段。公式:
MAKEDATE([Ship Year],[Ship Month],[Ship Day])
提示:「配置」窗格的数据桶会汇总日期字段,默认按年度分组;若需查看实际日期,点击配置卡“更多选项”,选择「详细信息」即可。

修复「Discounts」(折扣)字段

该字段存在两个问题:数据类型为字符串(应改为小数)、无折扣值显示为“None”(需改为0),修复步骤如下:
-
在「配置」窗格搜索框输入“disc”,定位Discounts字段。
-
双击字段值“None”,修改为“0”。
-
点击字段旁的“Abc”(字符串标识),从下拉菜单选择「数字(十进制)」,更改数据类型。

为便于追溯,双击「流程」窗格中的“Clean 1”,将其重命名为“Fix dates/field names”(修复日期/字段名称)。
提示:「更改」窗格会记录所有清理操作,可删除、编辑更改,或调整更改顺序,便于优化清理流程。
清理 Orders_East 文件
-
选中Orders_East输入步骤,添加清理步骤(操作类Orders_Central)
-
修复「Sales」(销售额)字段:该字段包含USD货币代码,且为字符串类型,需先移除字母,再更改数据类型:
-
选中Sales字段,点击“更多选项”,选择「清理」>「移除字母」,自动剔除货币代码。

-
点击字段旁的“Abc”,选择「数字(十进制)」,更改数据类型为小数。

-
-
命名清理步骤:将“Clean 1”重命名为“Change data type”(更改数据类型)。
清理 Orders_West 文件
-
选中Orders_West输入步骤,添加清理步骤(操作同前)。
-
修复「State」(州)字段:将州缩写改为全称,使用「对值进行分组」功能(旧版本为“分组和替换”):
-
选中State字段,点击“更多选项”,选择「对值进行分组」>「手动选择」。

-
在弹出的编辑器中,双击左侧的州缩写,输入对应全称(如下表),按Enter确认。

重复操作完成所有缩写映射
-
|
缩写 |
州名称 |
|---|---|
|
AZ |
Arizona |
|
CA |
California |
|
CO |
Colorado |
|
ID |
Idaho |
|
MT |
Montana |
|
NM |
New Mexico |
|
NV |
Nevada |
|
OR |
Oregon |
|
UT |
Utah |
|
WA |
Washington |
|
WY |
Wyoming |
3.点击「完成」关闭编辑器,系统会将所有州缩写映射合并为一条更改记录,便于追溯。
4.命名清理步骤:将“Clean 1”重命名为“Rename states”(重命名州)。
提示:可手动添加数据样本中不存在的字段值并建立映射,后续刷新数据源时,新数据可直接匹配映射规则,无需重复修改;手动添加的值会带有红点标记,便于识别。
保存流程
清理完成后,点击「文件」>「保存」或「另存为」,将流程保存为.tfl格式(流程文件),命名为“My Superstore”(我的超市)即可。
提示:也可保存为.tflx格式(打包文件),将本地数据文件一并打包,便于共享;Web端会自动保存草稿,点击草稿标题即可命名。详情可查看「保存和共享工作」(链接在新窗口打开)。
4.合并数据
所有文件清理完成后,需将其合并为单一表,便于后续分析。因清理后各文件字段结构一致,可通过「并集」步骤合并所有行;之后再添加产品退货数据,通过「联接」步骤补充字段。
第一步:并集合并所有订单文件
-
在「流程」窗格,将“Rename states”(重命名州)清理步骤,拖到“Changed data type”(更改数据类型)步骤上,选择「并集」选项,系统会自动添加新的「Union」(合并)步骤。

-
将剩余步骤(Orders_Central的“Fix dates/field names”步骤、南部区域的输入步骤),依次拖到新的「Union」步骤上,选择「添加」,完成所有订单文件合并。

检查并集结果
选中「Union」步骤,可查看合并结果:
-
系统会自动匹配字段名称和类型一致的字段,不同步骤的字段会以不同颜色标记,便于区分来源。
-
新增「Table Names」(表名称)字段,记录每行数据的来源表;Tableau Prep Builder 还会新增「File Paths」(文件路径)字段,显示南部区域文件的路径。
-
「摘要」窗格会显示不匹配字段,此时可发现“Product”与“Product Name”、“Discounts”与“Discount”字段名不同,但数据一致,需手动合并:
-
勾选「仅显示不匹配字段」,快速定位不匹配字段。

-
将“Product”拖到“Product Name”上,“Discounts”拖到“Discount”上,完成字段合并。

-
提示:若系统检测到潜在匹配字段,会以黄色标记,悬停后点击加号即可合并;详情可查看「修复不匹配的字段」。
将「Union」步骤重命名为“All orders”(所有订单)。
第二步:添加并清理产品退货数据
需将return_reasons_new文件添加到流程,清理后通过「联接」步骤与订单数据合并,具体操作如下:
1. 添加退货数据并筛选字段
-
在「连接」窗格点击「添加连接」,选择Microsoft Excel,导航至return_reasons_new.xlsx文件,点击「打开」添加到流程。
-
筛选有用字段:在该输入步骤的「输入」窗格,取消所有字段勾选,仅勾选「Order ID」(订单ID)、「Product ID」(产品ID)、「Return Reason」(退货原因)、「Notes」(注释)四个字段。

-
重命名输入步骤:双击输入步骤名称,改为“Returns (all)”(退货(全部))。
2. 清理退货数据
-
选中“Returns (all)”输入步骤,添加清理步骤。
-
清理「Notes」(注释)字段:
-
移除多余空格:选中Notes字段,点击“更多选项”,选择「清理」>「剪裁空格」。

-
拆分字段:选中Notes字段,点击“更多选项”,选择「拆分值」>「自动拆分」,将退货注释与审批者姓名拆分为两个字段。

-
重命名字段:将“Notes-Split 1”改为“Return Notes”(退货注释),“Notes-Split 2”改为“Approver”(审批者)。
-
移除原始字段:选中Notes字段,点击“更多选项”,选择「移除」。

-
-
统一「Approver」(审批者)字段值:部分审批者姓名存在多种输入形式,需分组统一:
-
选中Approver字段,点击“更多选项”,选择「对值进行分组」>「共同字符」。

-
系统会自动将姓名变体分组,检查确认后点击「完成」。

-
-
命名清理步骤:将“Clean 1”重命名为“Cleaned notes”(清理的注释)。
第三步:联接订单与退货数据
订单数据与退货数据共用「Order ID」和「Product ID」字段,可通过「联接」步骤合并,补充退货相关字段:
-
在「流程」窗格,将“Cleaned notes”步骤拖到“All orders”步骤上,选择「联接」选项,系统会自动打开联接配置界面。


-
调整联接条件:系统默认仅通过「Product ID」联接,需添加「Order ID」作为联接条件:
-
在左侧「联接子句建议」中,找到“Order ID = Order Id”,点击加号添加。

-
-
更改联接类型:默认为「内部联接」(仅显示双方匹配的数据),需改为「左联接」,确保保留所有订单数据,同时匹配对应退货数据:
在「联接类型」图表中,点击左侧(All orders对应的一侧),即可切换为左联接。

提示:联接配置界面可查看联接结果汇总(匹配/未匹配行数)、编辑联接条件,也可直接在「联接结果」窗格执行清理操作;详情可查看「聚合、联接或合并数据」(链接在新窗口打开)。
将联接步骤重命名为“Orders+Returns”(订单+退货),并保存流程。
第四步:清理联接结果
联接后需移除重复字段、添加实用计算字段,优化数据结构:
-
选中“Orders+Returns”步骤,添加清理步骤。
-
移除重复/无用字段:选中「Table Names」「Order ID」「File Paths」(仅Tableau Prep Builder)、「Product ID-1」,点击“更多选项”选择「移除」。

-
重命名字段:将「Order ID-1」重命名为「Order ID」。
-
添加计算字段:
-
点击工具栏「创建计算字段」,命名为“Days to Ship”。
-
输入公式,点击保存:
-
DATEDIFF('day',[Order Date],[Ship Date])

-
-
点击工具栏「创建计算字段」,命名为“Returned?”。
-
输入公式,点击「保存」
-
If ISNULL([Return Reason])=FALSE THEN "Yes" ELSE "No" END
-
-
字段1:“Returned?”(已退货?),标记订单是否退货:
-
字段2:“Days to Ship”(发货天数),计算订单发货耗时:
-
5.命名清理步骤:将“Clean 1”重命名为“Clean Orders +Returns”(清理订单+退货)。
提示:Tableau Prep Builder中,可右键点击任意步骤,选择「在Tableau Desktop中预览」,检查数据清理效果;详情可查看「在Tableau Desktop中查看流程输出」(链接在新窗口打开)。
5.运行流程并生成输出
数据清理与合并完成后,需添加输出步骤,生成可用于Tableau Desktop分析的文件(或发布数据源),具体操作如下:
添加输出步骤并配置
-
选中“Clean Orders+Returns”步骤,点击加号图标,选择「输出」(旧版本为“添加输出”),打开「输出」窗格。
-
配置输出参数,根据操作端选择对应设置:
-
在「将输出保存到」下拉菜单中选择「已发布数据源」。
-
选择目标项目,输入文件名(如“Orders_Returns_Superstore”)。
-
在「将输出保存到」下拉菜单中选择「文件」(旧版本为“保存到文件”)。
-
点击「浏览」,输入文件名(如“Orders_Returns_Superstore”),选择保存路径(默认在Tableau Prep Builder存储库的数据源文件夹),点击「接受」。

-
选择输出类型:用于Tableau Desktop分析,建议选择「Tableau 数据提取 (.hyper)」;需共享给第三方,选择「逗号分隔值 (.csv)」。
-
-
配置写入选项:默认选择「创建表」,运行流程时会用新数据覆盖原有表;若需保留历史数据,可选择「追加表」(2020.2.1及以上版本支持)。
提示:输出可选择生成本地文件(仅Tableau Prep Builder)、发布到服务器/云平台,或写入数据库;详情可查看「创建数据提取文件和已发布数据源」(链接在新窗口打开)。
运行流程
-
Tableau Prep Builder:点击「输出」窗格或「流程」窗格中的「运行流程」按钮(向右箭头图标),开始生成输出文件。
-
Web端:点击「发布」发布草稿流程,仅已发布的流程可运行;发布后导航至「浏览」>「所有流程」,可查看流程运行状态。

流程运行完成后,会弹出成功提示,显示运行耗时,点击「完成」即可。

6.保持数据更新
可通过以下方式保持数据最新:
-
手动运行流程,或通过命令行刷新输出文件(详情可查看「通过命令行刷新流程输出文件」)。
-
启用Tableau Prep Conductor(需Data Management),可在服务器/云平台按计划运行流程。
-
2020.2.1及以上版本的Tableau Prep Builder和Web端,支持增量刷新,仅处理新增数据,提升效率(详情可查看「使用增量刷新来刷新流程数据」)。
更多推荐
所有评论(0)