基于零代码平台助睿数智的学生用户画像-考勤主题扩展标签构建
摘要:本实验基于学生考勤数据(迟到、早退、请假、校服违规次数),使用K-Means算法进行聚类分析。通过助睿数智平台完成数据加载、建模(设置3个聚类簇)和可视化分析,最终识别出三类学生群体:自律模范型(C1,各项指标良好)、轻微波动型(C2,偶有违规)和纪律高危型(C3,多项违规频发)。实验结果通过ETL流程更新至原数据表,为校园管理提供数据支持。整个流程采用零代码操作,涵盖数据预处理、模型构建到
1 实验概述
1.1 实验目标
依托已构建的学生考勤主题标签表(student_attendance_stats),采用 K-Means 聚类算法完成学生考勤行为自动分组。以迟到、早退、请假、校服违规次数作为核心分析指标,划分出不同考勤行为群体并形成可解读的学生考勤画像,为校园学生日常管理、行为分析工作提供精准的数据依据。
1.2 实验环境
实验平台:助睿数智(Uniplore)在线实验平台,访问地址:https://lab.guilan.cn/。该平台为 AI 驱动的一站式数据科学平台,具备数据接入、ETL 处理、机器学习建模、可视化展示等全链路零代码能力,产品官网:https://www.uniplore.com/。本次实验主要使用平台三大功能模块:助睿 ETL 数据集成平台、助睿 AI 人工智能平台、助睿 BI 数据可视化探索平台。
数据库:MySQL
基础数据源:学生考勤主题标签表(student_attendance_stats)
2 实验数据
2.1 数据概况
本次实验沿用前序实验生成的学生考勤主题标签表,数据集整合了学生基础信息与各类考勤次数统计数据,数据经过规整处理,可直接作为聚类模型的标准特征数据源。
2.2 字段详情
|
名称 |
说明 |
类型 |
|
id |
自增主键 |
连续(整数) |
|
student_id |
学生 ID |
连续(整数) |
|
student_name |
学生姓名 |
文本 |
|
class_id |
班级 ID |
连续(整数) |
|
class_name |
班级名称 |
文本 |
|
grade |
年级 |
文本 / 分类 |
|
gender |
性别 |
二分类 |
|
birth_date |
出生日期 |
文本 / 日期 |
|
political_status |
政治面貌 |
文本 / 分类 |
|
is_boarder |
是否住校 |
二分类 |
|
campus_type |
校区类型 |
文本 / 分类 |
|
late_count |
迟到次数 |
连续(整数) |
|
early_leave_count |
早退次数 |
连续(整数) |
|
leave_count |
请假次数 |
连续(整数) |
|
uniform_violate_count |
校服违规次数 |
连续(整数) |
|
create_time |
统计入库时间 |
日期时间 |
2.3 建模思路
结合数据集特征与考勤分群的实际业务需求,确定本次聚类建模方案如下:
数据集维度明确、变量规模适中,本次筛选迟到次数、早退次数、请假次数、校服违规次数四类核心考勤指标参与建模。四类指标业务指向独立、相互关联性弱,不存在变量冗余问题,无需开展复杂降维操作,可直接用于 K-Means 聚类,保障聚类结果易于解读。
参与建模的指标均为非负整数型连续变量,数据类型统一,完全匹配 K-Means 算法使用要求,无需进行哑变量编码、二值化等特殊数据转换,精简数据预处理步骤,提升聚类结果的稳定性。
性别、年级、住校状态等学生基础离散信息不纳入聚类计算,仅在模型输出结果后,作为补充标签辅助完成学生考勤画像解读。
3 实验操作步骤
AI Studio 人工智能平台是一站式大数据智能应用平台,支持通过零代码拖拽式操作完成机器学习全流程,涵盖数据加载、数据预处理、特征工程、模型训练及效果评估等环节。平台内置百余种数据挖掘算法组件,兼容主流深度学习框架,同时提供可视化建模、智能分析、协作共享、版本管理等功能,使用者无需具备专业编程能力,即可高效完成数据挖掘与智能分析工作。
3.1 AI Studio 聚类建模流程
3.1.1 新建工作流
本环节依托 AI Studio 搭建完整业务工作流,串联数据加载、聚类建模、结果导出全流程,为模型运行提供独立的执行环境。
点击页面左侧菜单栏「人工智能」,进入 AI Studio 人工智能平台,跳转至对应功能模块的用户操作空间。

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

3.1.2 数据导入
首先,我们需要将 student_attendance_stats 的数据载入,搜索“数据库加载”、K-means、”数据入库”控件,拖拽至画布

双击“数据库加载”控件,右边会出现参数配置窗口,将团队私有数据库的信息填入,并点击“连接”

在弹出的窗口中,点击下拉框,选择 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”组件,配置窗口中,簇数量选择固定3个,其他保持不变

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

3.1.4 结果输出与保存
聚类后的数据我们需要保存到数据库中,以便后续使用
创建“K-Means”组件到“数据入库”组件的连线后
双击“数据入库”组件,数据库配置中输入团队私有数据库的参数,并点击“获取表信息”

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

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

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

进入助睿BI 平台的首页,可以看到该账户下的数据情况、数据分析处理流程、支持的数据源有哪些
如果是进入的页面是登录页面,可以关闭后,重新从实验平台进入
3.2.1 连接数据源
上一步骤输出的 student_cluster 存放于我们的团队私有数据库中,所以我们需要在助睿BI 平台中创建数据库连接
点击左边菜单中的“数据源”

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

在弹出的窗口中输入自己所在小组在 Uniplore实验平台 的数据库连接账号信息,点击“测试连接”

出现“测试连接成功”表示我们的连接正确,点击“确认”

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

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

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

数据集创建成功后,会自动跳到该数据集的配置页面,第一步需要先选择数据源,数据源的第一个选项选择我们刚刚新建的数据源“商业数据分析实验” ,第二个选项则选择student_cluster 所在的目录“labs”

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

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

其他字段的字段备注按照同样操作进行修改,字段别名参考如下:
|
原字段名 |
字段备注 |
|
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.3节中制作的工作表都拖拽至画布中

拖入完毕后,可以按住图标顶部中间位置拖动图标,并使用鼠标对图表大小和布局进行调整,预期效果如下:

点击保存按钮,保存并发布仪表盘
3.2.5 聚类群体画像分析
结合六组双指标散点图的数据分布规律,对 C1、C2、C3 三个聚类组别进行业务释义,将算法聚类编号转化为具备实际管理意义的学生考勤画像,具体分析如下:
C1(蓝色):自律优秀群体
该组别数据在迟到、早退、请假、校服违规各项指标组合视图中,均集中在低数值区间,无异常离散数据。此类学生出勤状态良好,纪律观念较强,考勤违规行为极少,是全校考勤表现的标杆群体。
C2(青色):小幅波动群体
整体数据同样处于低频次范围,相较于 C1 分布更为分散,部分学生存在偶尔请假、未按规定穿着校服的情况,迟到、早退现象基本未出现。该群体整体遵守校纪,仅存在零星轻微考勤问题,只需日常常规提醒即可。
C3(黄色):纪律重点关注群体
该组别数据存在显著离散特征,在迟到相关组合图表中高频违规记录集中,同时伴随早退、请假、校服违规等多项问题,是唯一出现多类考勤违纪叠加的群体。此类学生考勤问题较为突出,为校园纪律管理中需要重点督导、干预的对象。
聚类组别信息汇总如下表:
|
聚类簇编号 |
展示颜色 |
群体名称 |
主要特征 |
|
C1 |
蓝色 |
自律模范型 |
各项考勤违规次数均处于低位,出勤稳定,自律性强 |
|
C2 |
青色 |
轻微波动型 |
迟到、早退情况极少,偶有请假、校服违规行为,整体纪律良好 |
|
C3 |
黄色 |
纪律高危型 |
多项考勤违规频次偏高,违纪行为叠加,存在大量极端异常数据 |
3.3 聚类标签并入学生考勤数据表
将本次聚类得到的群体分类结果,追加至前期生成的学生考勤主题标签表 student_attendance_stats 中。
3.3.1 数据表新增字段
原student_attendance_stats表未收录考勤分组信息,因此在表内增设两个扩展字段:
cluster:用于存储聚类簇编号
attendance_group:用于标注考勤所属群体
进入此前在数据集成平台搭建的 ETL 项目,新建名称为增加考勤主题扩展标签字段的转换流。在操作画布中拖入执行一个 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 聚类簇编号数据获取
接下来,我们需要使用 3.1这步骤中 AI Studio 输出的结果表 student_cluster ,xxx
打开上一个实验创建的项目,创建转换流“增加考勤群体分类标签”,将图中组件拖入进画布并连接

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

3.3.3 字段选择
获取的数据中,我们只需保留 student_id、Cluster 字段
双击“字段选择”组件,点击“移除”选项,并在字段名称下方空白区域右键-点击“获取字段”

选中 student_id、Cluster 字段后右键“删除选中的行”,表述除 student_id、Cluster 外,其他字段均被移除

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

最后点击“确认”

3.3.4 聚类簇编号映射
原始聚类簇编号以编号形式存储,可读性差,通过映射转换增加中文说明
双击“值映射”组件,使用的字段名为“Cluster ”, 目标字段名为“attendance_group”

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

同样的,再插入2行,设置:
- 源值:“C2”,目标值:“自律模范型”
- 源值:“C3”,目标值:“纪律高危型”
并点击“确认”

3.3.5 更新学生考勤主题标签
双击“更新”组件,在配置窗口中,数据库连接选择团队私有数据,目标模式为labs

点击目标表后的“浏览”按钮,选择 student_attendance_stats,并点击“确定”
用来查询的关键字表格空白处获取字段,保留 student_id、class_id,表示更新时查询到数据表与流里的字段1相同时,执行更新操作
用来查询的关键字表格空白处获取字段,保留 student_id、class_id,表示更新时查询到数据表与流里的字段1相同时,执行更新操作

更新字段表格空白处获取字段,删除 student_id,这里需要注意,我们在增加扩展字段时,聚类簇编号的字段为cluster,所以在表字段的 Cluster 字段中需要双击后点击下拉框选择正确的表字段
最后的配置如下,表示当数据表的student_id与流里的student_id相同时,将流字段Cluster、attendance_group的值更新到表字段cluster、attendance_group中

3.3.6 运行转换流
点击运行按钮

执行结果和日志:

3.3.7 查看结果
切换“元数据”选项,右键“团队私有数据库”,点击“加载元数据”, 加载成功后点击“数据探查”, 在团队私有数据库中点击 student_attendance_stats ,在点击“查询”,可以看到 cluster、attendance_group的数据已经更新成功了

制作不易,看到这了麻烦给个小心心呗~
更多推荐




所有评论(0)