作品数据特征加工与统计分析实验
1 实验目的
本实验基于实验7-1已清洗完成的数据集,依托数据处理工具完成作品标题特征提取、互动指标衍生计算及关键词维度数据汇总,实现两类特征数据的合规计算与精准入库存储,核心完成两大模块任务:
(1)作品明细数据更新:计算作品整体互动总数,提取5类标题特征标识字段,将结果更新至已有content_analysis明细表,实现单作品维度特征补全;
(2)关键词维度汇总统计:基于5类标题特征关键词,分组计算各关键词对应作品的平均互动数据,将汇总统计结果输出至title_feature_analysis汇总表。
通过本实验,应掌握:
-
理解特征工程在数据分析中的核心作用
-
“计算器”组件计算衍生指标
-
使用“JavaScript代码”组件完成文本关键词的自动标注
-
使用“插入/更新”组件回填数据,不新建表、不覆盖已有基础数据
-
使用“过滤+聚合”组件组合完成分组统计计算
2 实验环境
本次实验使用的核心组件:
| 组件 | 用途 |
|---|---|
| 表输入 | 读取 content_analysis 表中待处理的数据 |
| 计算器 | 计算互动总数(likes + favorites + shares + coins) |
| JavaScript代码 | 提取标题中的5个关键词特征标志 |
| 插入/更新 | 按 id 匹配,更新 content_analysis 表中的特征字段 |
| 过滤记录 + 聚合 | 分别统计整体平均值和每个关键词的平均值 |
| 增加常量 | 为每个关键词分支添加名称标识 |
| 合并记录 | 将5个关键词的统计结果合并为5行 |
| 表输出 | 将互动数据汇总写入 title_feature_analysis 表 |
3 核心设计思路
本次实验构建两类特征,并将数据更新到实验7-1 的content_analysis 表中:
-
互动总数:
likes + favorites + shares + coins,反映作品的用户互动规模(绝对值) -
标题特征:把标题中是否包含特定关键词提取为0/1标志字段,后续量化对比这些词的实际效果
数据处理流程:
4 实验步骤
本环节核心是基于实验7-1清洗完成的明细数据,通过可视化组件完成互动指标衍生计算、文本标题特征智能提取,最终精准回填更新原有业务明细表,在不新增冗余数据、不覆盖原始基础字段的前提下,完善作品维度的特征与互动指标体系,具体操作步骤如下:
4.1 更新 content_analysis 表(标题特征+互动总数)
步骤1:导入数据
登录平台,进入本次实验对应的ETL项目工作界面,打开可视化数据加工工作区。在组件资源库中拖拽「表输入」核心组件至工作画布,配置数据源为实验7-1最终输出的content_analysis数据表。
步骤2:提取标题特征(核心分析维度)
在「表输入」组件下游,连线添加「JavaScript代码」组件,用于对作品标题文本进行关键词匹配,自动化提取5类标题特征0-1标志字段。
var title = title; // 字段名直接作为变量使用
// 判断关键词
var has_best = title.indexOf("保姆级") !== -1 ? 1 : 0;
var has_lowcode = title.indexOf("零代码") !== -1 ? 1 : 0;
var has_practice = title.indexOf("实战") !== -1 ? 1 : 0;
var has_tutorial = (title.indexOf("教程") !== -1 || title.indexOf("指南") !== -1) ? 1 : 0;
var has_pit = title.indexOf("踩坑") !== -1 ? 1 : 0;
// 将结果赋值给新字段(输出字段需在字段表中提前定义)
has_best = has_best;
has_lowcode = has_lowcode;
has_practice = has_practice;
has_tutorial = has_tutorial;
has_pit = has_pit;
返回值说明:
| 字段 | 返回值 | 条件 |
|---|---|---|
has_best |
1 / 0 | title中含"保姆级"为1,否则为0 |
has_lowcode |
1 / 0 | title中含"零代码"为1,否则为0 |
has_practice |
1 / 0 | title中含"实战"为1,否则为0 |
has_tutorial |
1 / 0 | title中含"教程"或"指南"为1,否则为0 |
has_pit |
1 / 0 | title中含"踩坑"为1,否则为0 |
设计思路:这五个关键词在数据中高频出现,且与“教学价值”“实操性”强相关,是分析标题影响力的理想切入点。每个特征独立提取,便于在BI中做分组对比。
步骤3:计算互动总数
承接JS组件输出的数据流,接入「计算器」组件,新建衍生字段total_interaction,配置计算公式:total_interaction = likes + favorites + shares + coins,批量计算每一条作品的整体用户互动总量,整合四类互动行为数据,形成统一热度指标。
步骤4:数据更新
为避免数据重复、覆盖原始基础数据,本次统一使用“插入/更新”组件替代普通表输出组件,实现精准增量更新,核心配置参数如下:
关键配置:
| 配置项 | 设置 |
|---|---|
| 目标表 | content_analysis |
| 查询关键字 | id(匹配依据) |
| 更新字段 | total_interaction, has_best, has_lowcode, has_practice, has_tutorial, has_pit |
字段映射:
| 流字段 | 表字段 |
|---|---|
| id | id |
| interactions | total_interaction |
| has_best | has_best |
| has_lowcode | has_lowcode |
| has_practice | has_practice |
| has_tutorial | has_tutorial |
| has_pit | has_pit |
“插入/更新” vs “表输出”的区别:如果使用“表输出”,每次运行都会新增行,导致数据重复。“插入/更新”按
id匹配,如果id已存在则更新指定字段,如果不存在才插入新行(本例中id一定存在,所以只做更新,不新增行)。这样本实验可以反复运行,不会产生重复数据。
步骤5:执行转换流
梳理完整数据流转链路:表输入→JavaScript代码组件→计算器组件→插入/更新组件,确认所有组件参数、字段映射配置无误后,点击运行任务,执行数据转换与更新,完成作品明细维度的特征数据补全。
数据结果:
4.2 输出关键词级别的汇总表
本环节核心目标:基于更新后的content_analysis明细数据,分组统计5类关键词对应作品的平均互动量、样本数量,结合平台整体平均互动数据,生成标准化关键词维度汇总表title_feature_analysis。
步骤1:创建目标表
在新建title_feature_analysis数据表,用于存储关键词统计汇总结果,数据表字段结构规范如下:
| 字段 | 类型 | 说明 |
|---|---|---|
| id | INT | 自增主键 |
| platform | VARCHAR(20) | 平台(B站/CSDN) |
| feature_name | VARCHAR(50) | 关键词名称 |
| avg_interaction | DECIMAL(10,2) | 含该关键词的平均互动总数 |
| overall_avg | DECIMAL(10,2) | 该平台整体平均互动总数 |
| sample_count | INT | 含该关键词的作品数 |
步骤2:计算整体平均互动数
基于更新后的content_analysis明细数据新建数据分支,依次接入“排序记录”“聚合”组件,按作品id升序排序,不设置筛选分组条件,对全量数据执行聚合计算,求取total_interaction字段的整体平均值,得到平台整体互动均值overall_avg。
聚合完成后,接入“增加常量”组件,新增feature_name字段并赋值为对应关键词名称,为整体均值数据添加标签,用于后续数据匹配与合并。
步骤3:计算关键词的平均互动数
以“保姆级”关键词为例,复制数据源分支,搭建单关键词统计流程:
1. 接入“过滤记录”组件,设置筛选条件has_best = 1,精准筛选出标题含「保姆级」的所有作品数据;
2. 接入“排序记录” “聚合”组件,排序后执行聚合计算,分别求取筛选数据的total_interaction平均值(avg_interaction)、作品样本数(sample_count);
3. 接入「增加常量」组件,设置feature_name = 「保姆级」,为当前分支统计数据添加专属标签,区分不同关键词统计结果,避免数据混淆。
步骤4:合并整体平均值和关键词平均值
使用“记录集连接”组件,以feature_name为唯一匹配字段,关联合并“平台整体平均数据”与“关键词专属统计数据”,整合为单关键词完整统计数据集。因两条分支均为单行数据,无需额外排序,直接精准匹配合并即可。
步骤5:数据入库
接入“表输出”组件,将合并后的关键词统计数据写入title_feature_analysis目标表,取消勾选裁剪表选项,保留已有数据,为后续多关键词数据入库预留空间,避免数据清空。
步骤6:执行转换流
完整复制“保姆级”关键词的整套数据处理分支,仅修改两处核心配置:
一是过滤组件的筛选条件(对应修改为has_lowcode=1、has_practice=1等剩余四类特征)
二是常量组件的feature_name关键词名称,其余组件参数、流转逻辑保持不变,依次完成“零代码” “实战” “教程/指南” “踩坑”四类关键词的统计计算与数据入库。
查看数据:
接下来加工其他关键词的数据:
复制粘贴整个分支,然后只修改两处:过滤条件(如
has_lowcode = 1)和常量值(如零代码)。其他组件配置完全相同。
最后的完整数据情况如下:
5 实验输出
| 输出表 | 数据粒度 | 用途 |
|---|---|---|
content_analysis(更新) |
作品级 | 排名、趋势、概况等明细分析 |
title_feature_analysis(新建) |
关键词级 | 标题特征互动分析 |
6 实验总结和收获
本次实验依托助睿ETL完成了作品标题特征提取、互动指标计算与关键词汇总分析,让我扎实掌握了零代码大数据ETL的基本操作与处理流程。
我熟练掌握了计算器、JS代码、过滤聚合、插入/更新等常用组件的用法,能够完成指标衍生计算、文本关键词量化、增量数据更新和分组统计分析,明白了插入更新与直接表输出的区别,学会了保护原始数据、避免数据重复覆盖的规范操作。
同时我初步理解了特征工程的意义,学会将文本、多维度数据进行量化分析,掌握了从明细加工到聚合汇总的分层数据分析思路,提升了大数据处理的实操能力与逻辑思维。
更多推荐



所有评论(0)