历史版本7 :数据加工并分析 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

基础表处理 中已经将数据表接入 BI,并对其进行了简单的清洗。

接下来需要解决的问题有:

  • 只有请假的员工会标注考勤状态,有过打卡行为的员工不能区分考勤状态;

  • 打卡信息中缺少员工的姓名、年龄、性别等基础信息,这些信息都在「人员信息表」中;

  • 数据中只有打卡时间,但是缺少工作时长的数据等等。

需要通过自助数据集数据处理来解决。

2. 区分打卡打卡行为编辑

2.1 标记有打卡行为的数据

1)新建一个自助数据集「考勤数据(不请假)」,勾选 Excel 数据集「打卡信息表」的所有字段。

过滤出非公休非请假的数据,即「状态」字段为空时的数据,这部分数据中员工应该正常打卡,将其过滤出来以便对他们的打卡数据进行分析。如下图所示:

过滤详细说明参见:过滤基础功能

2)添加分组汇总,求出用户每天打卡的最早时间和最晚时间。如下图所示:

最早时间对应员工的上班时间

最晚时间对应员工的下班时间

分组汇总详细说明参见:分组汇总基础功能

3)新建一个字段「是否迟到」,在李明明的公司中,晚于 9:30 到公司就算迟到。所以我们新建一个 9:30 的字段用于判断,使用时间差,如果字段<0,就是迟到,如下图所示:

新增列详细说明参见:新增列-时间差

4)对考勤时间进行比较判断。

当工作时长小于六小时时,判断为缺勤;

当上班时间大于 9:30 时,判断为迟到;其余判断为「全勤」。

计算出工作时长后,新增列输入公式:IF(工作小时<6,"缺勤",IF(是否迟到<0,"迟到","全勤")),如下图所示:

新增列详细说明参见:新增列-公式函数

5)隐藏我们之后不需要的字段。如下图所示,在字段设置中取消勾选即可。

字段设置详细说明参见:字段设置

6)保存并更新该自助数据集。

2.2 汇总考勤数据

此时需要将请假的用户数据和未请假的数据进行汇总。

1)新建一个自助数据集「考勤汇总」,勾选 Excel 数据集「打卡信息表」的所有字段。

过滤出所有请假的数据(注意不选择公休和调休数据)。如下图所示:

注:因为只统计工作日数据,所以这里不选择公休和调休数据。

2)添加分组汇总,设置和「考勤数据(不请假)」相同的条件,如下图所示:

注:此处为合并 2.1 节数据做准备。

3)将请假的数据和 2.1 节正常打卡的数据合并到一张表中。进行上下合并,如下图所示:

上下合并详细说明参见:上下合并基础功能

3. 合并姓名、性别等数据编辑

已经完成了对考勤数据的整理,接下来希望打卡信息中能新增员工的姓名、年龄、性别等基础信息,这些信息都在「人员信息表」中。

因此需要使用左右合并功能,通过「工号」字段将两张数据表的数据进行合并,由于我们希望保留「打卡信息表」的所有数据,因此选择左合并,如下图所示:

左右合并详细说明参见:左右合并基础功能

4. 计算工作时长和年龄编辑

只有打卡时间但想要知道每个员工的工作时长,此时需要继续使用数据集进行数据处理。

使用函数 DATESUBDATE 计算「最晚时间」和「最早时间」的时间差。输入公式:DATESUBDATE(最晚时间,最早时间,"m")/60,如下图所示:

注:时间字段需要选择数据表中的字段,不能手动输入文字。

14.png

若使用的实时数据,你可以使用新增列-时间差 计算工作时长,如下图所示:

在合并数据后,知道了员工身份证号,就可以通过计算,得到员工的年龄,使用公式:YEAR()-TOINTEGER(MID(身份证号码,7,4)),如下图所示:

注:身份证号码需要选择数据表中的字段,不能手动输入文字。

此时我们的数据处理就完成了,当然可以在使用字段设置取消掉不需要使用的中间字段。