当前位置: 首页 > news >正文

实验7-2作品特征构建

一、实验背景

1.1实验目的

在实验7-1 清洗后的数据的基础上,使用助睿ETL完成以下两类特征的计算与存储:

(1)标题特征与互动总数(更新明细表)

  • 计算互动总数(total_interaction = likes + favorites + shares + coins)
  • 提取5个标题特征标志字段(has_best、has_lowcode、has_practice、has_tutorial、has_pit)
  • 将计算结果更新到 content_analysis 表

(2)关键词级别的汇总数据

  • 分别计算含每个关键词的作品的平均互动总数
  • 将互动汇总结果输出到 title_feature_analysis 表

通过本实验,学生应掌握:

  • 理解特征工程在数据分析中的核心作用
  • 使用助睿ETL的“计算器”组件计算衍生指标
  • 使用“JavaScript代码”组件完成文本关键词的自动标注
  • 使用“插入/更新”组件回填数据,不新建表、不覆盖已有基础数据
  • 使用“过滤+聚合”组件组合完成分组统计计算

1.2核心组件

1.3核心设计思路

本次实验构建两类特征,并将数据更新到实验7-1 的content_analysis 表中:

  • 互动总数:likes + favorites + shares + coins,反映作品的用户互动规模(绝对值)
  • 标题特征:把标题中是否包含特定关键词提取为0/1标志字段,后续量化对比这些词的实际效果

数据处理流程:

二、 实验步骤

2.1更新 content_analysis 表(标题特征+互动总数)

步骤1 导入数据

将实验7-1输出的 content_analysis表作为输入,拖入助睿ETL工作区。助睿ETL支持跨项目引用数据集,可直接选择实验一输出的结果表。

步骤2:提取标题特征(核心分析维度)

在"JavaScript代码"组件中,可以直接使用JJavaScript代码对 title 字段进行关键词匹配,生成5个标题特征标志字段。

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;

返回值说明:

设计思路:这五个关键词在数据中高频出现,且与“教学价值”“实操性”强相关,是分析标题影响力的理想切入点。每个特征独立提取,便于在BI中做分组对比。

步骤3:计算互动总数

接入“计算器”组件,新增 interactions 字段:interactions = likes + favorites + shares + coins

步骤4:数据更新

使用“插入/更新”组件,将计算好的特征数据回填到 content_analysis 表

关键配置:

字段映射:

执行转换流:

2.2输出关键词级别的汇总表

步骤1:创建目标表

创建以下目标表用来存储本节最后输出的数据:

步骤2:计算整体平均互动数

接入“排序记录”、“分组”组件,按id升序排序,不设分组条件,直接计算 AVG(total_interaction),得到 overall_avg。

聚合完成后,接入“增加常量”组件,新增字段 feature_name = '保姆级',为这一行数据贴上名称标签,以便用于后续与关键词数据连接。

步骤3:计算关键词的平均互动数

以“保姆级”为例,表输入组件复制分发另一条分支,先接“过滤记录”组件,设置 has_best = 1,只保留含“保姆级”的作品。

然后接入“排序记录”、“分组”组件,按id升序排序,计算 AVG(total_interaction) 得到 avg_interaction,COUNT(id) 得到 sample_count。

聚合完成后,接入“增加常量”组件,新增字段 feature_name = '保姆级',为这一行数据贴上名称标签。

为什么要加这个常量?因为聚合后的数据只有数值,没有关键词名称。如果不加,5个分支的数据合并后无法区分谁是谁。常量就是给每一行贴上一个“标签”,告诉下游“这一行是保姆级的数据”。

步骤4:合并整体平均值和关键词平均值

接下来将整体平均值和关键词平均值进行合并,使用“记录集连接”组件,匹配字段为feature_name,由于2个分支都只有1行数据,所以无需排序。

步骤5:数据入库

用”表输出”组件将合并后的数据入库,这里需要注意:不勾选“裁剪表”,因为还有其他关键词数据也要入库,不用删除已有数据。

步骤6:执行转换流

一个关键词的互动汇总数据加工转换流如下,点击运行:

三、实验结果

四、实验心得

实验 7-2 基于清洗后的明细数据完成特征工程,我深刻体会到特征工程是挖掘业务规律的核心手段,单纯的原始浏览、互动数字无法体现标题对流量的影响,只有提取文本特征、衍生指标,才能量化运营策略差异。本次实验分为两大模块:一是给明细数据新增互动总量、5 类标题关键词 0-1 标记字段;二是分平台聚合关键词平均互动数据,输出标题特征分析汇总表。

在 JavaScript 文本匹配环节,我学会用代码自动识别标题中的 “零代码、保姆级、实战、教程、踩坑”,将非结构化文本转化为可统计的结构化特征。初次编写脚本时出现关键词匹配遗漏、字段输出未定义的报错,反复调试判断逻辑后,实现一键批量标记所有作品标题特征,相比人工统计效率大幅提升。同时借助计算器组件衍生 total_interaction 互动指标,统一 B 站投币、点赞、收藏、分享的互动统计口径,解决双平台指标不统一的问题。

关键词聚合统计的分支流程是本次实验难点:需要分别计算平台整体平均互动、含单一关键词作品平均互动,再通过记录集连接合并数据,增加常量标签区分不同关键词。初期未添加 feature_name 常量,多条分支合并后无法区分数据归属,导致汇总表全部行标签混乱。通过拆分单关键词流程、分步执行、分段探查数据,理清了 “过滤 — 聚合 — 打标签 — 合并入库” 的标准化统计链路。

从业务层面,特征数据直观展现不同标题关键词的互动提升效果,让运营优化不再依靠主观经验,完全依靠量化数据支撑。本次实验让我掌握文本特征提取、多分支聚合、增量更新数据表的实操方法,理解特征工程的核心逻辑:贴合业务场景构造可解释指标,把隐藏在文本、原始数字里的业务规律显性化,为 BI 可视化提供可对比的分析维度。

http://www.jsqmd.com/news/1133000/

相关文章:

  • YOLOv12在密集航拍场景下的困境:超过75%物体小于2000像素时如何破局?
  • Nmap网络探测与安全审计:从端口扫描到资产管理的实战指南
  • 2026年标书代写服务深度测评:哪家公司真正靠谱?
  • 算法学习路线复盘:别把刷题数量当成成长证据
  • AI 图表推荐:先判断分析任务,再决定可视化形式
  • Adobe软件激活新选择:5分钟掌握通用破解工具
  • 如何在PC上免费畅玩Switch游戏:yuzu模拟器全面配置指南
  • 如何5分钟快速修复Windows更新故障:终极解决方案指南
  • KMS_VL_ALL_AIO:3分钟完成Windows激活的终极指南
  • 5分钟掌握TrollInstallerX:iOS设备快速安装TrollStore完整指南
  • 短剧出海中小企业主流广告素材监测工具(2026 最新,预算友好型)
  • Unity Mod Manager完整指南:让Unity游戏模组管理变得前所未有的简单
  • JY6311--国产最优单声道音频编解码器
  • AtCoder Beginner Contest 465 E - Digit Circus
  • Python并发编程实战:多线程vs多进程性能对比,一篇文章让你彻底选对方案
  • 在PC上畅玩Switch游戏:yuzu模拟器开源解决方案深度解析
  • 抖音评论采集终极指南:三步搞定批量评论提取,无需编程经验
  • Android随笔-Instrumentation
  • B站视频下载终极指南:免费获取大会员专属4K高清视频
  • 【Android 调试】Android编译ABL签名报错OpenSSL版本兼容问题分析与解决
  • JPEXS FFDec终极指南:5个简单步骤掌握Flash逆向工程与SWF文件分析
  • 如何高效获取9大网盘直链下载权限:LinkSwift完整使用指南
  • Python 后端基础(十七):Docker 和 Docker Compose 怎么用,把项目一键跑起来
  • B站视频下载终极方案:轻松获取4K高清与充电专属内容
  • 破解创意枷锁:Adobe-GenP如何重塑数字创作的经济学
  • 混合注意力(Channel+Spatial)替代SE模块:mAP涨2.3%但计算量只增5%的魔法
  • XGBoost 2.0.3 实战:Python 调参避坑 5 要点,AUC 提升 0.15
  • 毕业设计实战:基于OpenCV与CNN的人脸识别系统从零搭建【手把手教学】
  • 从零构建 AI 学术论文助手(一):架构设计与技术选型
  • 基于MCP与Playwright的Threads评论数据自动化抓取与分析实战