首先将Tableau与Excel文件建立连接,并对数据进行必要的整理加工。这种数据连接和整理加工,在Tableau中是非常容易的。
打开Tableau程序,如图1-4所示。
图1-4 打开的Tableau程序
单击左侧“连接”列表中的“Microsoft Excel”命令,打开“打开”对话框,在文件夹里选择要分析的“员工信息.xlsx”文件,如图1-5所示。
图1-5 选择要分析的Excel文件
单击“打开”按钮,进入Tableau的“数据源”界面,如图1-6所示。
图1-6 Tableau的“数据源”界面
将左侧窗口中的“基本信息”工作表拖放到右侧窗口中的“将工作表拖到此处”位置(也可以双击工作表“基本信息”),得到员工基本信息数据的预览效果,如图1-7所示。
图1-7 员工信息数据预览
由于需要对年龄和工龄进行分组分析,而原始数据中并没有这两个字段,因此需要根据出生日期和入职日期创建年龄分组字段和工龄分组字段,这可以使用Tableau函数计算处理。
首先创建计算字段“年龄”。在任意字段标题位置右击,在弹出的快捷菜单中执行“创建计算字段”命令,如图1-8所示。
为了使数据预览效果更加清晰,最好在字段“出生日期”处右击,这样创建的计算字段“年龄”会在字段“出生日期”后面。
图1-8 “创建计算字段”命令
打开对话框,输入字段名“年龄”,并输入下面的公式,如图1-9所示。
IF DATEDIFF('year',[出生日期],TODAY())<=30 THEN "30岁以下" ELSEIF DATEDIFF('year',[出生日期],TODAY())<=35 THEN "31-35岁" ELSEIF DATEDIFF('year',[出生日期],TODAY())<=40 THEN "36-40岁" ELSEIF DATEDIFF('year',[出生日期],TODAY())<=45 THEN "41-45岁" ELSEIF DATEDIFF('year',[出生日期],TODAY())<=50 THEN "46-50岁" ELSEIF DATEDIFF('year',[出生日期],TODAY())<=55 THEN "51-55岁" ELSE "56岁以上" END
图1-9 创建计算字段“年龄”
单击“确定”按钮,数据表中就添加了一个计算字段“年龄”,如图1-10所示。
图1-10 添加的计算字段“年龄”
以此方法再创建和添加计算字段“工龄”,如图1-11和图1-12所示,其计算公式如下。
IF DATEDIFF('year',[入职时间],TODAY())<=5 THEN "5年以下" ELSEIF DATEDIFF('year',[入职时间],TODAY())<=10 THEN "6-10年" ELSEIF DATEDIFF('year',[入职时间],TODAY())<=15 THEN "11-15年" ELSEIF DATEDIFF('year',[入职时间],TODAY())<=20 THEN "16-20年" ELSE "20年以上" END
图1-11 创建计算字段“工龄”
图1-12 添加的计算字段“工龄”
在创建计算字段时,使用了Tableau函数的DATEDIFF函数、TODAY函数、IF函数、ELSEIF函数等,这些函数与Excel函数差不多,很好理解,也很好应用。