从考勤数据到画像看板:手把手教你用ETL识别“纪律高危”学生群体
第一部分 学生用户画像——考勤主题扩展标签构建
1 实验说明
1.1 实验目的
本次实验将基于已完成的学生考勤主题标签表(student_attendance_stats),对表中的数据聚合处理后,借助平台的“人工智能”板块,使用 K-Means 聚类算法对学生考勤行为进行自动分群。通过迟到、早退、请假、校服违规次数等核心指标,识别不同类型的考勤群体,生成可解释的考勤画像,为校园学生管理、行为分析提供精准数据支撑。
1.2 实验环境
- 助睿数智(Uniplore)在线实验平台:https://lab.guilan.cn/, 助睿数智(Uniplore)是AI驱动的一站式数据科学平台,覆盖从数据接入、ETL处理、机器学习建模到可视化展示的全链路零代码功能,产品官网为 https://www.uniplore.com/,本次实验主要用到以下功能平台:
- 数据集成平台(助睿 ETL)
- 人工智能平台(助睿 AI)
- 助睿BI 数据可视化探索平台
- 数据库:MySQL
- 前置数据:学生考勤主题标签表(student_attendance_stats)
2 实验数据
2.1 数据构成
本次实验使用上一实验输出的学生考勤主题标签表,聚合处理后数据包含学生基础信息与考勤次数统计结果,为聚类建模提供干净、标准化的特征数据。
2.2 建模思路
通过对数据的观察,以及对考勤分群的业务需求分析,我们确定本次建模分析思路如下:
- 基于考勤业务的理解,我们选择将变量聚焦在迟到次数、早退次数、请假次数、校服违规次数四类行为维度,每个维度直接反映一类考勤特征,变量间业务含义独立、相关性低,可直接用于 K-Means 聚类建模,避免变量间耦合度过高导致模型解释困难。
- 本次建模采用次数类连续变量,数据类型单一、适配 K-Means 算法要求。可以直接通过K-Means算法输出,无需进行更复杂的处理。
- 学生基础离散属性(性别、年级、住校状态等)不参与聚类建模,仅作为后续画像标签的辅助解释变量。
3 实验步骤
人工智能平台(AI Studio)是一站式大数据智能应用平台,以零代码拖拽的方式简化机器学习全流程,提供从数据加载、预处理、特征工程到模型训练与评估的完整解决方案。
3.1 AI Studio 聚类建模
3.1.1 新建工作流
在该环节,我们使用 AI Studio 搭建从数据加载到聚类建模、结果输出的完整流程,为后续建模提供独立运行空间。
- 点击左边菜单“人工智能”,进入人工智能平台(AI Studio),进入人工智能模块用户空间

- 点击“+” - “新建工作流”

- 在该模块页面中,主要包括三个模块,分别是菜单栏,控件列表以及画布(用于工作流构建)。如下图所示:

3.1.2 数据导入
- 首先,我们需要将 student_attendance_stats 的数据载入,搜索“数据库加载”控件,拖拽至画布
- 双击“数据库加载”控件,右边会出现参数配置窗口,将团队私有数据库的信息填入,并点击“连接”

- 在弹出的窗口中,点击下拉框,选择 student_attendance_stats

- 选择后会自动加载表信息,我们主要是分析各类异常考勤占比的特征,所以只需保留 student_id 、class_id、late_count、early_leave_count、leave_count、uniform_violate_count,其他字段跳过(skip);为保留的字段选择对应的属性类型,最后点击“确定”

字段对应的属性类型参考如下:
| 属性名称 | 属性类型 | 属性名称 | 属性类型 |
|---|---|---|---|
| id | skip | political_status | skip |
| student_id | categorical | is_boarder | skip |
| student_name | skip | campus_type | skip |
| class_id | categorical | late_count | numeric |
| class_name | skip | early_leave_count | numeric |
| grade | skip | leave_count | numeric |
| gender | skip | uniform_violate_count | numeric |
| birth_date | skip | create_time | skip |
- 右键数据库加载空间,点击“运行该控件”

- 运行成功后可右键点击“查看输出结果”

- 可以看到保留下来的数据

3.1.3 K-Means 聚类建模
- 拖入“K-Means”组件,创建数据库加载组件到“K-Means”组件的连线

- 双击“K-Means”组件,配置窗口中,簇数量选择固定3个,其他保持不变

- 右键运行该控件,查看输出结果,可以看到每个学生分别标记了对应的簇类C1/C2/C3

3.1.4 结果输出与保存
聚类后的数据我们需要保存到数据库中,以便后续使用
- 拖拽“数据入库”组件到画布,创建“K-Means”组件到“数据入库”组件的连线

- 双击“数据入库”组件,数据库配置中输入团队私有数据库的参数,并点击“获取表信息”

- 在弹出的窗口中,选择“新建数据表”,表名称修改为“student_cluster”,并点击“确定”

- 运行工作流,各控件均运行成功则工作流运行成功

3.2 分析聚类簇编号对应的考勤群体分类
上一步骤输出的聚类簇编号无法确定对应的考勤群体分类,可要通过助睿BI 可视化分析来确定
- 点击实验平台左边菜单“助睿BI”,进入助睿BI平台


3.2.1 连接数据源
上一步骤输出的 student_cluster 存放于我们的团队私有数据库中,所以我们需要在助睿BI 平台中创建数据库连接
- 点击左边菜单中的“数据源”

- 点击左上角“+”-“新建连接”-“MySQL”

- 在弹出的窗口中输入自己所在小组在 Uniplore实验平台 的数据库连接账号信息,点击“测试连接”,出现“测试连接成功”表示我们的连接正确,点击“确认”

- 点击新建的数据库目录,可以看到本次实验所用的学生考勤主题标签表(右键点击-查看表数据,可以预览表内数据)

3.2.2 构建数据集
数据源连接成功后,我们要将需要分析的数据表构建为数据集
- 点击左边菜单中的“数据集”,点击左上角“+”-“新建数据集”

- 在弹窗中输入数据集名称、所属分组、备注信息后点击“确认”

- 数据源的第一个选项选择我们刚刚新建的数据源“商业数据分析实验” ,第二个选项则选择student_cluster 所在的目录“se_group_8”

- 数据源选择完成后,目录下的数据表自动出现在画布左边,将student_cluster 拖拽至画布中

- 查看数据的表结构及数据,为方便进行后续分析,将字段备注分别修改为中文,并点击“√”保存

完整字段的字段备注按照同样操作进行修改,字段别名参考如下:
| 原字段名 | 字段备注 |
|---|---|
| student_id | 学生ID |
| class_id | 班级ID |
| late_count | 迟到次数 |
| early_leave_count | 早退次数 |
| leave_count | 请假次数 |
| uniform_violate_count | 没穿校服次数 |
| Cluster | 聚类簇编号 |
| Silhouette | 轮廓系数 |
- 字段别名修改完成后,点击画布左上角“保存”按钮,在保存提示中点击“保存并发布”,只有发布后的数据集才能在工作表中引用

3.2.3 制作工作表
工作表是助睿BI 平台中用于承载可视化图表、完成数据探索与分析的核心单元,是实现数据可视化展示的基础载体
- 接下来我们开始制作聚类簇编号对应的考勤群体分类工作表,点击左边菜单中的“工作表”,进入工作表模块

- 为了方便管理,我们将本次制作的工作表集中存放在一个目录下,点击左上角的“+”-“新建分组”

- 在弹窗中输入分组名称、选择所属分组、填写备注信息后点击“确认”

- 右键或者点击聚类簇对应的考勤画像群体分类分析分组的“…”,在操作列表中点击“新建工作表”

- 在弹窗中输入工作表名称为“迟到早退次数的聚类簇分析”、选择所属分组、填写备注信息后点击“确认”

- 自动跳转到工作表设计页面,数据集选择刚刚创建的“聚类簇编号数据集”

- 图表类型选择“探索器”

- 将字段“late_count(迟到次数)”拖拽到X轴,“early_leave_count(早退次数)”拖拽到Y轴

- 点击图形设置按钮,打开设置面板;在设置面板中,点击颜色区域的“+”,在下拉框中选择“Cluster(聚类簇编号)”,并点击“确认”

- 点击信息区域的“+”,在下拉框中选择“student_id(学生ID)”,并点击“确认”

- 将“student_id(学生ID)”设置为“维度”

- 系统默认限额为2000条数据,因此,需要将限额设置为100%,避免数据过多不显示全部

- 为了区分更明显,我们可以设置聚类簇编号的颜色,点击颜色区域的设置按钮,切换对比强烈的主题

- 点击保存按钮,保存并发布工作表

- 同样的,重新新建工作表,依次两两分析4个异常考勤次数的3个聚类簇的表现情况
- 迟到与没穿校服次数的聚类簇分析

- 请假与没穿校服次数的聚类簇分析:

- 迟到与请假次数的聚类簇分析;
- 早退与请假次数的聚类簇分析;
- 早退与没穿校服次数的聚类簇分析。
3.2.4 搭建仪表盘
为了更好地观察分析以上制作的6个工作表,我们可以将它们放在一起
- 点击左边菜单“仪表盘”,点击左上角“+”-“新建仪表盘”

- 仪表盘名字输入“聚类簇分析”,备注信息输入“聚类簇分析”,点击“确认”

- 在右边组件与工作表区域,点击“基础组件”,可拖拽文本组件和工作表到画布中,构建一个自己的仪表盘


- 点击保存按钮,保存并发布仪表盘

3.2.5 聚类群体画像解读
结合前边得到的6组两两指标散点图的分布特征,我们可以为 C1、C2、C3 三类聚类簇赋予清晰的业务含义,完成从机器编号到可解释学生画像的转化:
- C1(蓝色,自律模范型):在迟到、早退、请假、校服违规次数的所有组合中,数据点高度集中在低频次区间,无明显离群值。这类学生出勤稳定、纪律意识强,各类异常行为极少,是校园考勤行为的正面典型。
- C3(青色,轻微波动型): 整体数据点同样集中在低频次区间,但相比 C1 分布略散,少量记录存在轻微的校服违规或请假行为,迟到、早退次数始终保持低位。这类学生整体纪律可控,仅存在偶发的轻微考勤波动,属于需要日常提醒的群体。
- C2(黄色,纪律高危型): 数据点呈现明显的 “离群特征”,在迟到次数与其他指标的组合图中,出现了大量高频迟到记录,且伴随有不同程度的早退、请假或校服违规行为,是唯一存在多维度叠加违纪的群体。这类学生考勤问题突出,是校园管理中需要重点关注和干预的核心对象。
最终群体分类映射总结表:
| 聚类簇编号 | 颜色 | 群体分类名称 | 核心特征 |
|---|---|---|---|
| C1 | 蓝色 | 自律模范型 | 全维度异常次数均极低,出勤表现稳定,纪律意识强 |
| C3 | 青色 | 轻微波动型 | 迟到早退次数低,偶发校服违规或请假,整体纪律可控 |
| C2 | 黄色 | 纪律高危型 | 全维度异常次数均偏高,高频违纪行为叠加,存在极端离群记录 |
3.3 将映射结果加入学生考勤主题标签表
我们需要将最终群体分类数据增加到上一个实验输出的结果表学生考勤主题标签表 student_attendance_stats 中
3.3.1 新增扩展字段
我们需要在现有学生考勤主题标签表 student_attendance_stats 中增加分类数据,首先我们需要在 student_attendance_stats 中增加2个字段:
- cluster:聚类簇编号
- attendance_group:考勤群体分类
- 进入上一个实验在数据集成平台中创建的ETL项目,新建转换流“增加考勤主题扩展标签字段”,拖拽并“执行一个SQL脚本”组件到画布中

- 双击“执行一个SQL脚本”组件,在配置窗口中,数据库连接“团队私有数据库”,输入SQL脚本后点击:“确认”

SQL如下:
-- 为学生考勤统计表添加聚类结果字段
ALTER TABLE student_attendance_stats
ADD COLUMN cluster VARCHAR(10) NULL DEFAULT NULL COMMENT '聚类簇编号',
ADD COLUMN attendance_group VARCHAR(30) NULL DEFAULT NULL COMMENT '考勤群体分类';
- 执行转换流:

3.3.2 聚类簇编号数据获取
接下来,我们需要使用AI Studio 输出的结果表 student_cluster
- 打开上一个实验创建的项目,创建转换流“增加考勤群体分类标签”

- 拖拽“表输入”组件到画布中,双击“表输入”组件,从团队私有数据库中获取3.1步骤中的分类结果表 student_cluster 的所有SQL 查询语句

3.3.3 字段选择
- 获取的数据中,我们只需保留 student_id、Cluster 字段,拖拽“字段选择”组件到画布中,并创建“表输入”组件到“字段选择”组件的连线;双击“字段选择”组件,点击“移除”选项,并在字段名称下方空白区域右键-点击“获取字段”


- 选中 student_id、class_id、Cluster 字段后右键“删除选中的行”,表示除了这3个字段外,其他字段均被移除

- 为了保持和 student_attendance_stats 表中字段类型一致,不影响后续数据更新到 student_attendance_stats,需要将 student_id、class_id 的类型修改为Integer,点击元数据选项,插入2行, student_id、class_id 的配置如下:

3.3.4 聚类簇编号映射
- 添加“值映射”组件到画布中,并字段选择组件到值映射组件的连线,并选择“主输出步骤”

- 双击“值映射”组件,使用的字段名为“Cluster”,目标字段名为“attendance_group”

- 在下方字段值表格空白处右键,点击“插入”,双击插入的行,在源值中输入“C1”,目标值输入“轻微波动型”,代表将原数据中的“C1”统一映射为“轻微波动型”。同样的插入其他两个字段,并点击“确认”

3.3.5 更新学生考勤主题标签
- 拖拽“更新”组件到画布中,并创建值映射组件到更新组件的连线

- 双击“更新”组件,在配置窗口中,数据库连接选择团队私有数据,选择目标表为之前得到的标签表student_attendance_stats,并点击“确定”

- 用来查询的关键字表格空白处获取字段,保留 student_id、class_id,表示更新时查询到数据表与流里的字段1相同时,执行更新操作;在增加扩展字段时,聚类簇编号的字段为cluster,所以在表字段的 Cluster 字段中需要双击后点击下拉框选择正确的表字段

3.3.6 运行转换流
- 点击运行按钮,查看执行结果和日志:

3.3.7 查看结果
- 切换“元数据”选项,右键“团队私有数据库”,点击“加载元数据”,加载成功后点击“数据探查”

- 在团队私有数据库中点击 student_attendance_stats ,在点击“查询”,可以看到 cluster、attendance_group的数据已经更新成功了


第二部分 学生用户画像——考勤画像可视化分析
1 实验说明
接下来我们将基于第一部分所更新的标签表,聚焦“纪律高危型”群体,分析其行为特征。通过专项画像分析,可以为精准干预和重点整治提供数据支撑,主力校园精细化管理。
2 实验步骤
2.1 进入助睿BI
- 进入实验平台后,点击左侧菜单的“助睿BI”,即可进入助睿BI可视化探索平台

2.2 连接数据源
- 因为我们上一步实验已经在“分析聚类簇编号对应的考勤群体分类”时创建了团队私有数据库的连接,所以我们可以直接使用这个数据源,无需再连接数据源。
2.3 构建数据集
接下来我们将使用student_attendance_stats构建数据集,用于后续的分析。 - 点击左侧菜单中的“数据集”,切换后点击左上角“+”-“新建数据集”

- 在弹窗中填写数据集的信息,点击“确认”

- 数据集创建成功后,会自动跳转到数据集的配置页面,我们先选择数据源。第一个选择“商业数据分析实验”,第二个选择student_attendance_stats所在的目录“se_group_8”

- 同样的,将要使用到的数据表拖拽到画布,并依据需求修改字段备注,之后,点击“保存并发布”

2.3 制作工作表
工作表是承载可视化图表、开展数据分析的基础单元
- 点击左侧菜单中的“工作表”,进入工作表模块

- 为方便管理,我们点击左上角,新建分组

2.3.1 整体概况指标卡
指标卡是助睿BI平台中用于直观展示核心统计数值的基础组件,能够快速直观地呈现关键指标。
2.3.1.1 纪律高危型总人数
- 右键学生考勤主题分析分组,点击“新建工作表”

- 在弹窗中填写 “纪律高危型总人数”

- 自动跳转到工作表设计页面,在数据集下拉框中选择“学生考勤数据集”

- 在右边基础图表中点击“指标卡”,将字段“student_id”拖拽到值,点开学生ID地聚合类型为“去重计数”


- 点击打开设置面板,在过滤器中新增“attendance_group”,并点击确认

- 点击过滤器中“attendance_group”的“编辑”,在过滤器配置中选择“包含以下选项”-勾选“纪律高危型”,点击确认。此时,指标卡的数值也会及时更新



- 接下来,我们点击“样式设置”,对指标卡的样式进行调整,这一步不作详细演示,大家可自行根据自己想要的样式进行设置

- 设置好样式后,我们就可以点击保存发布了

2.3.1.2 纪律高危型男生人数
- 整体步骤可参照“2.4.1.1 纪律高危型总人数”步骤,只需多一步操作:在筛选器中多添加一个“gender(性别)”字段,并设置为包含“男”



2.3.1.3 纪律高危型女生人数
同样地,参照上一步“纪律高危型男生人数”步骤,将包含改为“女”


2.3.1.4 纪律高危型未知性别人数
同样地,参照“纪律高危型男生人数”步骤,将包含改为“未知”


2.3.1.5 整体指标分析
从整体的指标卡可以看到,纪律高危型学生总人数为139人,其中男生15人、女生9人、未知性别115人,男生略多于女生,但因未知性别数据过多,实际情况仍需要更清晰的数据支撑。
2.3.2 纪律高危型学生性别特征分析
- 新建工作表“纪律高危型学生男女人数占比”,数据集选择“学生考勤主题数据集”,图表类型选择“饼图”


- 将字段“student_id”拖拽到值,“gender”拖拽到分类,并将“student_id”的聚合方式设置为“去重计数”

- 同样地,在过滤器中包含“attendance_group”和“gender”字段,勾选分组1为“纪律高危型”;同时,为了更好地分析,我们需要在过滤器中,排除“gender”字段为“未知”的数据


- 系统默认的饼图没有百分比标签,我们可以点击“样式设置”-“图表元素设置”-“标签显示形式”-勾选“百分比”,之后便可在饼图中看到对应的百分比,其他样式可自行设置

从这里开始,相信大家已经有了初步了了解,我们就不再一步步展示了,仅展示一部分关键过程。
2.3.3 纪律高危型学生年级特征分析



2.3.4 纪律高危型学生校区类型+年级交叉特征分析


这里要注意,添加“校区类型”为分组

2.3.5 不同校区类型各年级学生人数

2.3.6 纪律高危型学生班级特征分析


2.4 搭建综合仪表盘
准备好所有的工作表后,我们将它们整合到一块,搭建综合的仪表盘
- 新建一个仪表盘


- 创建成功后,跳转到设计页面,我们根据自己的需求构建一个完整的画布




3 纪律高危型学生画像分析总结

第三部分 学生消费主题画像可视化

第四部分 实验总结与分析
本实验完成了画像工作表和仪表盘的完整构建。第一部分通过人工智能、运行工作流为考勤数据扩展了“考勤群体分类标签”字段;第二部分基于扩展后的数据,对“纪律高危型”学生群体进行画像分析,针对不同维度的核心特征进行交叉分析并进行可视化展示。实验成功实现了从数据标签构建到仪表盘可视化分析的全流程,为校园纪律高危学生的精准识别与干预提供了数据支撑。
本次实验基于助睿ETL平台完成了从数据标签构建到仪表盘可视化分析的全流程。总体而言,平台在以下几个方面表现良好:
- 一是组件化开发效率高。通过拖拽配置即可完成“插入/更新”、字段扩展等复杂逻辑,大幅降低了数据开发的门槛,特别适合校园场景下的快速迭代需求。
- 二是数据处理灵活可控。以“纪律高危型”学生画像为例,从考勤数据标签扩展、群体筛选到特征分析,整个过程可以在一个Pipeline内串联完成,数据流向清晰,调试方便。
- 三是可视化配置便捷。平台内置的仪表盘组件支持快速绑定数据源,帮助我们从“男生占比62.28%”“高二集中度超96%”等指标中快速识别高危群体特征,为报告生成和决策展示提供了有力支撑。
当然,平台也存在一些学习门槛,例如“更新”步骤需要目标表有匹配键值,初期配置不熟悉时容易失败,但熟悉后能够灵活应对。
整体来看,助睿ETL平台是一款适合校园数据分析场景的轻量级工具,能够较好地支撑从数据处理到可视化呈现的完整工作流。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)