助睿实验作业7-2自媒体运营分析-作品特征构建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代码组件完成文本关键词的自动标注·使用插入/更新组件回填数据不新建表、不覆盖已有基础数据·使用过滤聚合组件组合完成分组统计计算2实验环境实验平台助睿在线实验平台https://lab.guilian.cn/本次实验使用助睿数智Uniplore作为一站式数据科学平台。该平台覆盖从数据接入、ETL处理、机器学习建模到可视化展示的全链路零代码功能适用于数据分析教学与企业数据加工场景。助睿数智官网为https://www.uniplore.com/数据处理工具助睿ETL数据集成平台助睿ETL核心优势·全元数据驱动架构平台内所有对象类型均通过元数据标准化定义覆盖数据读取、处理、写入的全流程·零代码拖拽式操作通过可视化方式完成数据的抽取Extract、转换Transform、加载Load无需编写复杂代码·丰富的预处理组件内置筛选、填充、聚合、连接、字段选择等多种转换节点灵活应对各类数据清洗场景·Pipeline转换机制面向数据流通处理的核心功能单元由多个不同功能的Transform步骤组合构成聚焦数据本身的加工转换操作·开源内核高可用引擎基于开源内核的高可用引擎架构通过标准化插件体系可灵活扩展引擎能力本次实验使用的核心组件组件用途表输入读取 content_analysis 表中待处理的数据计算器计算互动总数likes favorites shares coinsJavaScript代码提取标题中的5个关键词特征标志插入/更新按 id 匹配更新 content_analysis 表中的特征字段过滤记录 聚合分别统计整体平均值和每个关键词的平均值增加常量为每个关键词分支添加名称标识合并记录将5个关键词的统计结果合并为5行表输出将互动数据汇总写入 title_feature_analysis 表3核心设计思路本次实验构建两类特征并将数据更新到实验7-1的 content_analysis 表中·互动总数likes favorites shares coins反映作品的用户互动规模绝对值·标题特征把标题中是否包含特定关键词提取为0/1标志字段后续量化对比这些词的实际效果数据处理流程【图1特征工程数据处理流程图】4实验步骤4.1更新 content_analysis 表标题特征互动总数步骤1导入数据将实验7-1输出的 content_analysis 表作为输入拖入助睿ETL工作区。助睿ETL支持跨项目引用数据集可直接选择实验7-1输出的结果表。步骤2提取标题特征核心分析维度在JavaScript代码组件中可以直接使用 JavaScript 代码对 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;【图2JavaScript代码组件配置截图】返回值说明字段返回值条件has_best1 / 0title中含保姆级为1否则为0has_lowcode1 / 0title中含零代码为1否则为0has_practice1 / 0title中含实战为1否则为0has_tutorial1 / 0title中含教程或指南为1否则为0has_pit1 / 0title中含踩坑为1否则为0设计思路这五个关键词在数据中高频出现且与教学价值实操性强相关是分析标题影响力的理想切入点。每个特征独立提取便于在BI中做分组对比。步骤3计算互动总数接入计算器组件新增 interactions 字段interactions likes favorites shares coins步骤4数据更新使用插入/更新组件将计算好的特征数据回填到 content_analysis 表。关键配置配置项设置目标表content_analysis查询关键字id匹配依据更新字段total_interaction, has_best, has_lowcode, has_practice, has_tutorial, has_pit字段映射流字段表字段ididinteractionstotal_interactionhas_besthas_besthas_lowcodehas_lowcodehas_practicehas_practicehas_tutorialhas_tutorialhas_pithas_pit插入/更新 vs 表输出的区别如果使用表输出每次运行都会新增行导致数据重复。插入/更新按id匹配如果id已存在则更新指定字段如果不存在才插入新行本例中id一定存在所以只做更新不新增行。这样本实验可以反复运行不会产生重复数据。步骤5执行转换流完整转换流如下点击运行【图3更新 content_analysis 完整转换流截图】数据结果【图4content_analysis 更新后数据探查结果】4.2输出关键词级别的汇总表步骤1创建目标表在助睿ETL中创建以下目标表用来存储本节最后输出的数据字段类型说明idINT自增主键platformVARCHAR(20)平台B站/CSDNfeature_nameVARCHAR(50)关键词名称avg_interactionDECIMAL(10,2)含该关键词的平均互动总数overall_avgDECIMAL(10,2)该平台整体平均互动总数sample_countINT含该关键词的作品数步骤2计算整体平均互动数接入排序记录、分组组件按 id 升序排序不设分组条件直接计算 AVG(total_interaction)得到 overall_avg。聚合完成后接入增加常量组件新增字段feature_name 保姆级为这一行数据贴上名称标签以便用于后续与关键词数据连接。步骤3计算关键词的平均互动数以保姆级为例表输入组件复制分发另一条分支先接过滤记录组件设置has_best 1只保留含保姆级的作品。然后接入排序记录、分组组件按 id 升序排序计算 AVG(total_interaction) 得到 avg_interactionCOUNT(id) 得到 sample_count。聚合完成后接入增加常量组件新增字段feature_name 保姆级为这一行数据贴上名称标签。为什么要加这个常量因为聚合后的数据只有数值没有关键词名称。如果不加5个分支的数据合并后无法区分谁是谁。常量就是给每一行贴上一个标签告诉下游这一行是保姆级的数据。步骤4合并整体平均值和关键词平均值接下来将整体平均值和关键词平均值进行合并使用记录集连接组件匹配字段为feature_name由于2个分支都只有1行数据所以无需排序。步骤5数据入库用表输出组件将合并后的数据入库这里需要注意不勾选裁剪表因为还有其他关键词数据也要入库不用删除已有数据。步骤6执行转换流一个关键词的互动汇总数据加工转换流如下点击运行【图5单个关键词互动汇总转换流截图】查看数据【图6title_feature_analysis 单关键词数据查看截图】接下来加工其他关键词的数据复制粘贴整个分支然后只修改两处过滤条件如has_lowcode 1和常量值如零代码。其他组件配置完全相同。最后的完整数据情况如下【图7title_feature_analysis 完整数据截图】5实验输出输出表数据粒度用途content_analysis更新作品级排名、趋势、概况等明细分析title_feature_analysis新建关键词级标题特征互动分析