一、实验概述

1.1 实验背景

校园考勤数据分散在多张表中,传统人工 Excel 统计效率低、口径不统一、难深度分析。本次实验基于 “数智教育” 大赛数据集,用助睿零代码 ETL 平台,完成学生考勤多维度标签构建,替代人工流程、固化统计口径,输出标准化考勤统计台账。

1.2 实验目的

  • 掌握助睿 ETL 全流程:数据接入→关联→清洗→标签衍生→聚合→结果入库
  • 熟练使用表输入、记录集连接、JavaScript 脚本、分组、字段选择、表输出等核心组件
  • 构建学生考勤标签体系:统计迟到 / 早退 / 请假 / 没穿校服次数,补充年级、校区、住校状态等画像维度

1.3 实验环境

  • 平台:助睿数智(Uniplore)零代码 ETL 平台
  • 地址:https://lab.guilian.cn/
  • 数据库:MySQL(团队私有数据库)
  • 核心数据表(3 张):
    • 考勤主表(3_kaoqin.csv):学生每日打卡明细
    • 考勤类型表(4_kaoqintype.csv):考勤行为标准化名称
    • 学生信息表(2_student_info.csv):学生基础属性

二、数据与标签梳理

2.1 源数据关系(星型模型)

  • 事实表:考勤主表(记录每次考勤行为)
  • 维度表:考勤类型表(定义行为名称)
  • 属性表:学生信息表(补充画像维度)

2.2 标签体系(3 大类)

  1. 基础属性标签:学生 ID、姓名、班级、性别、政治面貌、出生日期
  2. 画像维度标签:年级(从班级名提取)、是否住校(0/1 映射)、校区类型(新 / 老校区判定)
  3. 考勤行为标签:迟到次数、早退次数、请假次数、没穿校服次数

三、实验步骤(附截图说明)

步骤 1:创建项目与数据准备

  1. 登录平台→新建项目,命名 “学生用户画像 - 考勤主题标签构建”

  2. 文件库→新建 “数智教育数据集” 目录,导入 3 张核心 CSV 表

  3. 元数据→新建 MySQL 数据源(团队私有数据库),测试连接成功

  4. 执行 SQL 脚本,创建 3 张原始数据表(raw_attendance、raw_attendance_type、raw_student_info)

  5. 用 “CSV 文件输入 + 表输出”,将 3 张 CSV 数据导入对应原始表

步骤 2:创建目标标签表

新建转换流→命名 “创建学生考勤主题标签表”,用 “执行 SQL 脚本” 组件建表(student_attendance_stats),存储最终标签数据

步骤 3:数据接入(3 个表输入)

新建转换流→命名 “学生考勤主题标签”,拖拽 3 个 “表输入”,分别读取:

  • 考勤记录(raw_attendance)
  • 考勤类型(raw_attendance_type)
  • 学生信息(raw_student_info)

步骤 4:多表关联(记录集连接)

  1. 考勤记录→排序记录(按 attendance_type_id、attendance_task_order_id 排序)
  2. 排序后考勤记录 + 考勤类型→左外连接(关联键:attendance_type_id、attendance_task_order_id)
  3. 学生信息→排序记录(按 stu_id 排序)
  4. 关联后考勤数据→排序记录(按 stu_id 排序)+ 学生信息→左外连接(关联键:stu_id)

步骤 5:考勤行为标签衍生(JavaScript 脚本)

拖拽 “JavaScript 代码” 组件,输入脚本,生成 4 类异常考勤二进制标记(1 = 是,0 = 否):

  • 迟到(isLate):含 “迟到 / 晚到” 且非请假
  • 早退(isEarly):含 “早退” 且非请假
  • 请假(isLeave):含 “请假”
  • 没穿校服(isNoUniform):含 “校服”

步骤 6:指标聚合统计(分组)

拖拽 “分组” 组件,按stu_id、stu_name、cla_id、cla_name分组,SUM 聚合 4 类异常次数:

  • late_count=SUM(isLate)
  • early_count=SUM(isEarly)
  • leave_count=SUM(isLeave)
  • uniform_violate_count=SUM(isNoUniform)

步骤 7:字段清洗与空值处理

  1. 字段选择:移除冗余字段,保留核心标签字段
  2. 替换 NULL 值:性别、出生日期、政治面貌、是否住校空值替换为 “未知”

步骤 8:画像维度衍生(3 类)

  1. 住校状态映射:值映射组件,0→否、1→是

  2. 提取年级:JavaScript 脚本,班级名含 “高一 / 高二 / 高三”→对应年级,否则 “未知”

  3. 判定校区类型:JavaScript 脚本,班级名以 “白 -/ 东 -” 开头→新校区,否则老校区

步骤 9:结果入库(表输出)

拖拽 “表输出” 组件,配置:

  • 数据库连接:团队私有数据库
  • 目标表:student_attendance_stats
  • 勾选 “裁剪表”(避免重复数据)
  • 字段映射:流字段→目标表字段一一对应

步骤 10:执行转换流与结果验证

  1. 点击 “执行”→启动转换流,查看日志确认无报错
  2. 数据探查→打开 student_attendance_stats 表,查询验证数据:含学生基础信息、4 类考勤次数、3 类画像维度

四、实验核心知识点

  1. ETL 全流程:零代码实现数据从原始 CSV→数据库→清洗关联→标签生成→统计落地,替代人工 Excel
  2. 多表关联逻辑:左外连接保证数据不丢失,关联前排序避免连接错误
  3. 标签构建思路:基础属性直接读取、行为标签脚本判断、维度标签衍生计算
  4. 数据质量控制:空值处理、冗余字段移除、编码映射,确保标签数据规范可用

五、实验总结

本次实验基于助睿零代码 ETL 平台,完成学生考勤主题标签全流程构建,从 3 张原始数据表中,加工出含15 个字段的标准化考勤标签表,实现 4 类异常考勤自动统计、3 类画像维度自动衍生。全程无需编写复杂代码,通过可视化拖拽完成,大幅降低数据分析门槛,为校园考勤管理、学生行为分析提供精准数据支撑,流程可复用至用户画像、消费分析等多场景。

Logo

一站式 AI 云服务平台

更多推荐