前言
本次实验整理的是自媒体运营数据清洗与预处理过程。实验使用助睿数智(Uniplore)一站式数据科学实验平台中的数据集成模块,对自媒体作品数据明细.csv进行读取、分支加工、过滤清洗和结果入库。
原始数据中包含 B站、CSDN、微信、知乎、小红书等多个平台的作品互动数据。不同平台的数据字段和数据质量并不完全一致,比如部分平台的浏览量缺失较多,也有一些作品浏览量、点赞量、收藏量都为 0。为了让后续分析更加稳定,本次实验先对数据进行基础清洗,并输出两张结果表。
整个实验可以理解为一条“先建表、再读数、分两路加工、最后入库验证”的流程:
这次实验的重点不是单纯把 CSV 文件导入数据库,而是根据不同分析目标设计两条处理分支。全平台分支用于观察整体运营概况,重点平台分支用于后续内容表现分析。
第一部分:实验背景
1.1 实验目的
本次实验的主要目标是使用助睿平台完成自媒体作品互动数据的清洗与预处理,为后续指标计算、内容分析和可视化仪表盘搭建准备规范的数据表。
通过本次实验,我主要练习以下内容:
1. 熟悉助睿数据集成模块的基本使用流程; 2. 掌握 CSV 文件输入组件的配置方法; 3. 学会使用执行 SQL 脚本组件创建目标表; 4. 掌握排序记录、分组、过滤记录、缺失值填充、字段选择、表输出等组件的使用; 5. 理解分支式 ETL 处理思路; 6. 能够根据不同分析需求输出不同用途的数据表。本次实验中,我把原始数据分成两个加工方向:
第一条分支用于全平台概况统计,不对平台做筛选,主要统计不同日期、不同平台下的作品数量和互动总量。
第二条分支用于重点平台明细清洗,只保留 B站 和 CSDN 中浏览量大于 0 的有效作品,作为后续内容分析的基础数据。
1.2 实验环境
平台全称:助睿数智(Uniplore)一站式数据科学实验平台 平台定位:覆盖数据接入、ETL处理、机器学习建模到可视化分析的全链路 Agentic 零代码数据智能产品 产品官网:https://www.uniplore.com/ 实验平台地址:https://lab.guilian.cn/本次主要使用平台中的数据集成 / ETL 模块。该模块可以通过拖拽组件的方式完成数据读取、清洗、转换和入库,不需要单独编写完整的数据处理程序。
1.3 实验数据说明
本次实验使用的数据文件为:
自媒体作品数据明细.csv数据记录了多个自媒体平台上的作品互动情况,主要字段包括:
| 字段 | 说明 |
|---|---|
| 日期 | 数据采集日期 |
| 作者名称 | 作品发布者 |
| 标题 | 作品标题 |
| 平台 | 作品发布平台 |
| 点赞数量 | 作品点赞数 |
| 收藏数量 | 作品收藏数 |
| 分享数量 | 作品分享数 |
| 投币数量 | B站特有互动指标 |
| 浏览数量 | 播放量或阅读量 |
| url | 作品链接 |
| source_file | 数据来源文件标记 |
这份数据不能直接用于后续分析。原因主要有三个:
1. 不同平台字段含义不完全一致; 2. 部分平台浏览量缺失或为 0; 3. 个别文本字段可能为空,后续处理时容易出现异常。因此,本次实验先对数据做基础预处理,再输出结构更加清晰的结果表。
第二部分:实验步骤
2.1 创建实验目标表
开始搭建转换流前,我先创建两个目标表,用来分别保存两条分支的输出结果。
第一张表是:
summary_all_platforms这张表用于保存全平台概况统计结果,主要存放不同日期、不同平台下的作品数量、浏览量、点赞量、收藏量、分享量等聚合指标。
第二张表是:
content_analysis这张表用于保存清洗后的重点平台作品明细,只保留 B站 和 CSDN 的有效记录,作为后续内容分析的数据基础。
在助睿数据集成模块中新建转换流后,我拖入“执行 SQL 脚本”组件,连接数据库,并输入建表 SQL。
这里先创建全平台概况表:
DROPTABLEIFEXISTSsummary_all_platforms;CREATETABLEIFNOTEXISTSsummary_all_platforms(idINTAUTO_INCREMENTPRIMARYKEYCOMMENT'自增主键ID',crawl_dateDATENOTNULLCOMMENT'采集日期',platformVARCHAR(20)NOTNULLCOMMENT'平台名称',content_countINTCOMMENT'作品数量',total_viewsINTCOMMENT'总浏览数',total_likesINTCOMMENT'总点赞数',total_favoritesINTCOMMENT'总收藏数',total_sharesINTCOMMENT'总分享数',total_coinsINTCOMMENT'总投币数(仅B站)',total_recommendINTCOMMENT'总推荐数(仅微信)',total_likes_zhihuINTCOMMENT'总喜欢数(仅知乎)',total_approvalsINTCOMMENT'总赞同数(仅知乎)')ENGINE=InnoDBDEFAULTCHARSET=utf8mb4COMMENT='全平台概况汇总表';接着创建内容分析明细表:
DROPTABLEIFEXISTScontent_analysis;CREATETABLEIFNOTEXISTScontent_analysis(idINTAUTO_INCREMENTPRIMARYKEYCOMMENT'自增主键ID',dateDATENOTNULLCOMMENT'采集日期',author_nameVARCHAR(100)COMMENT'作者昵称',titleVARCHAR(500)NOTNULLCOMMENT'作品标题',platformVARCHAR(20)NOTNULLCOMMENT'B站 / CSDN',likesINTCOMMENT'点赞数',favoritesINTCOMMENT'收藏数',sharesINTCOMMENT'分享数',coinsINTCOMMENT'投币数(仅B站)',viewsINTCOMMENT'播放量/阅读量',urlVARCHAR(500)COMMENT'作品链接',total_interactionINTCOMMENT'互动总数',has_bestTINYINT(1)COMMENT'是否含“保姆级” 0否1是',has_lowcodeTINYINT(1)COMMENT'是否含“零代码” 0否1是',has_practiceTINYINT(1)COMMENT'是否含“实战” 0否1是',has_tutorialTINYINT(1)COMMENT'是否含“教程/指南” 0否1是',has_pitTINYINT(1)COMMENT'是否含“踩坑” 0否1是')ENGINE=InnoDBDEFAULTCHARSET=utf8mb4COMMENT='内容分析明细表';执行完成后查看日志,如果没有出现 SQL 执行错误,就说明目标表已经创建成功。
配置要点:
1. 执行 SQL 脚本组件需要先选择正确的数据源连接。 2. 建表前使用 DROP TABLE IF EXISTS,方便多次实验时重新运行。 3. summary_all_platforms 用于汇总统计,字段以聚合指标为主。 4. content_analysis 用于明细分析,字段尽量保留作品本身的信息。 5. 表字段类型要和后续输入数据匹配,数值类字段建议使用 INT。2.2 导入并读取原始 CSV 数据
目标表创建完成后,我开始导入原始数据文件。先在公共空间导入自媒体作品数据明细.csv。
然后在转换流中拖入“CSV 文件输入”组件。在 CSV 文件输入组件中选择对应文件后,点击“获取字段”,让平台自动识别字段名称和字段类型。
配置完成后先不要急着继续往下连组件,而是先点击“预览”,确认数据是否能够正常读取。预览时主要看三点:
1. 中文字段是否乱码; 2. 第一行是否被正确识别为字段名; 3. 每一列数据是否对应正确,没有出现字段错位。如果预览结果中,日期、作者名称、标题、平台、点赞数量、浏览数量等字段都能正常显示,就可以继续后续处理。
配置要点:
1. 文件编码建议选择 UTF-8。 2. 如果 CSV 第一行是字段名,需要勾选“包含列头行”。 3. 分隔符一般选择英文逗号,具体以文件实际格式为准。 4. 配置后一定要先预览数据,确认没有乱码和字段错位。 5. 只有输入数据正常,后面的分组、过滤和表输出才有意义。2.3 构建全平台概况统计分支
原始数据读取成功后,我先搭建第一条分支:全平台概况统计分支。
这条分支的目的不是筛掉某个平台,而是保留所有平台的数据,按日期和平台汇总作品数量及互动数据。这样后续可以用它做整体运营概况分析,比如每天各平台发布了多少作品、总浏览量是多少、不同平台互动量有什么差异。
这一分支的组件流程为:
CSV 文件输入 ↓ 排序记录 ↓ 分组 ↓ 表输出 ↓ summary_all_platforms我先拖入“排序记录”组件,将数据按照日期和平台进行排序。排序不是为了改变业务含义,而是为了让后续分组时字段顺序更加稳定。
然后拖入“分组”组件,以日期和平台作为分组字段。作品数量可以通过标题或记录数统计得到,浏览数量、点赞数量、收藏数量、分享数量、投币数量等字段使用求和方式处理。
分组后的数据已经从“作品明细”变成了“平台日期汇总”。接着拖入“表输出”组件,把结果写入summary_all_platforms表。
配置要点:
1. 排序字段选择“日期”和“平台”。 2. 分组字段同样选择“日期”和“平台”。 3. 作品数量字段使用计数方式统计。 4. 浏览、点赞、收藏、分享、投币等数值字段使用求和。 5. 输出表选择 summary_all_platforms。 6. 字段映射时要检查中文字段和目标表英文字段是否正确对应。2.4 构建重点平台有效记录分支
全平台分支用于整体统计,但如果要继续分析作品内容表现,就不能直接使用所有平台数据。因为原始数据里有些平台浏览量缺失较多,直接纳入明细分析会影响结果。
所以我又从 CSV 文件输入后拉出第二条分支,用来筛选重点平台有效记录。本实验中只保留 B站 和 CSDN,并且要求浏览数量大于 0。
这一分支的核心组件是“过滤记录”。
过滤条件设置为:
(平台 = 'B站' AND 浏览数量 > 0) OR (平台 = 'CSDN' AND 浏览数量 > 0)这个条件的意思是:记录必须属于 B站 或 CSDN,同时浏览数量必须大于 0。这样可以去掉其他平台数据,也可以过滤掉没有有效浏览量的记录。
配置要点:
1. 本分支只服务于内容明细分析,不用于全平台概况统计。 2. 过滤条件中 AND 和 OR 要配合使用。 3. 建议用括号明确条件范围,避免逻辑优先级导致筛选错误。 4. 平台字段只保留 B站 和 CSDN。 5. 浏览数量必须大于 0,避免无效记录影响后续分析。2.5 处理文本字段缺失值
完成过滤后,我继续添加“替换NULL值”组件。
这一步主要是为了避免后续字段选择、入库或标题特征分析时遇到空值。比如作者名称为空、标题为空时,后续如果继续做字符串判断,就容易出现异常。
本次实验中,我主要对文本字段进行填充,将所有空值统一替换为未知。
配置要点:
填充值要保持业务含义清楚,不要随意填入无关内容。2.6 选择分析所需字段
原始 CSV 中有一些字段只是采集过程中的辅助信息,比如source_file。这类字段对后续内容分析帮助不大,所以我使用“字段选择”组件进行字段裁剪和字段规范。
本次保留的字段主要包括:
日期 作者名称 标题 平台 点赞数量 收藏数量 分享数量 投币数量 浏览数量 url配置要点:
1. 字段选择不是越多越好,只保留后续分析真正需要的字段。 2. source_file 属于采集来源标记,本次明细分析中可以删除。 3. 字段顺序最好和目标表 content_analysis 保持一致。 4. 字段类型要注意,浏览量、点赞量等应保持数值类型。2.7 输出重点平台内容分析表
字段处理完成后,我拖入“表输出”组件,将清洗后的明细数据写入content_analysis表。
在表输出组件中选择数据库连接和目标表,然后点击获取字段,检查输入流字段是否能正确映射到目标表字段。
如果字段名称已经在“字段选择”组件中改好了,映射会比较顺利;如果字段名不一致,就需要手动调整映射关系。
运行前我重点检查了三个地方:
1. 目标表是否选择为 content_analysis; 2. 输入字段和目标字段是否一一对应; 3. 数值字段是否写入到数值字段中,没有出现字段错位。确认无误后运行转换流,将清洗后的 B站 和 CSDN 有效作品数据写入目标表。
配置要点:
1. 表输出组件要选择正确的数据库连接。 2. 目标表选择 content_analysis。 3. 字段映射必须逐项检查,尤其是 likes、favorites、shares、coins、views。 4. 如果多次运行实验,可以先清空目标表,避免重复写入。 5. 写入失败时优先检查字段类型和字段名是否匹配。2.8 运行完整转换流并查看日志
所有组件连接完成后,我运行完整转换流。运行时主要观察每个组件的输入、输出和错误数量。
完整流程大致如下:
CSV 文件输入 ├─ 全平台概况统计分支:排序记录 → 分组 → 表输出 summary_all_platforms └─ 重点平台明细清洗分支:过滤记录 → 缺失值填充 → 字段选择 → 表输出 content_analysis运行完成后,接着进入数据探查中查看两张表的数据。
查看全平台汇总表:
查看重点平台明细表:
配置要点:
1. 运行后先看日志,不要只看是否有结果。 2. 表输出组件如果报错,重点检查字段映射和数据类型。 3. summary_all_platforms 应该包含多个平台的汇总数据。 4. content_analysis 应该只包含 B站 和 CSDN。 5. content_analysis 中 views 应该全部大于 0。第三部分:实验结果
3.1 生成全平台概况汇总表
本次实验输出的第一张表是:
summary_all_platforms这张表按日期和平台进行汇总,能够看到不同平台在不同日期下的作品数量、浏览量、点赞量、收藏量、分享量等指标。
这张表适合用于后续仪表盘中的整体概况模块,比如:
作品总数 总浏览量 总点赞数 总收藏数 不同平台作品分布 不同平台互动量对比由于这张表没有过滤平台,所以它更适合回答“整体表现如何”的问题。
3.2 生成重点平台内容分析表
本次实验输出的第二张表是:
content_analysis这张表只保留 B站 和 CSDN 的有效作品记录,并删除了暂时不参与分析的字段。
可以使用下面的 SQL 检查平台范围:
SELECTplatform,COUNT(*)ASrecord_countFROMcontent_analysisGROUPBYplatform;如果查询结果中只出现 B站 和 CSDN,说明平台筛选正确。
还可以检查是否存在无效浏览记录:
SELECTCOUNT(*)ASinvalid_countFROMcontent_analysisWHEREviews<=0ORviewsISNULL;如果查询结果为 0,说明浏览量过滤规则生效。
3.3 实验结果分析
从结果来看,两张表的作用是分开的。
summary_all_platforms偏向整体统计,适合做平台概况、总量指标和趋势分析。
content_analysis偏向明细分析,适合继续计算互动率、标题关键词特征、内容表现分层等指标。
这种分开处理的方式比把所有数据都塞进一张表更清楚。后续做仪表盘时,可以直接让指标卡读取汇总表,让内容分析图表读取明细表,数据来源会更明确。
第四部分:问题与解决
4.1 CSV 读取后出现乱码或字段错位
问题现象:
在 CSV 文件输入组件中预览数据时,中文标题、平台名称或作者名称显示异常,或者字段内容没有落在正确的列中。
问题原因:
可能是文件编码和组件编码不一致,也可能是没有勾选“包含列头行”,导致第一行字段名被当成普通数据读取。
解决方法:
重新打开 CSV 文件输入组件,将编码设置为 UTF-8,并勾选“包含列头行”。配置后重新点击获取字段和预览,确认中文内容正常显示,字段没有错位后再继续后续组件配置。
4.2 过滤记录后数据不符合预期
问题现象:
过滤后仍然出现微信、知乎、小红书等平台数据,或者 B站、CSDN 中浏览量为 0 的记录没有被过滤掉。
问题原因:
过滤条件中 AND 和 OR 的组合关系不清楚,导致系统没有按照预期逻辑筛选数据。
解决方法:
使用括号明确条件范围:
(平台 = 'B站' AND 浏览数量 > 0) OR (平台 = 'CSDN' AND 浏览数量 > 0)这样可以确保每条保留下来的记录都同时满足“平台正确”和“浏览数量有效”两个条件。
4.3 表输出时报字段不匹配
问题现象:
运行到表输出组件时报错,或者目标表中字段为空、字段写入位置不正确。
问题原因:
输入流字段名和目标表字段名不一致,或者字段类型不匹配。例如输入字段仍然叫“浏览数量”,但目标表字段为views,自动映射时可能无法正确对应。
解决方法:
在“字段选择”组件中提前完成字段重命名,或者在表输出组件中手动调整字段映射关系。运行前逐项检查输入字段和目标字段是否一致。
4.4 多次运行后结果表数据重复
问题现象:
多次运行转换流后,目标表中的数据量不断增加,统计结果明显偏大。
问题原因:
表输出组件默认会继续向目标表追加数据。如果实验过程中多次运行,而没有清空目标表,就会产生重复记录。
解决方法:
调试阶段可以在运行前先执行清空表操作,或者在建表脚本中使用DROP TABLE IF EXISTS后重新创建表。正式保存结果前,再运行一次完整转换流,保证结果表数据干净。
4.5 缺失值没有处理导致后续字段异常
问题现象:
后续对标题、作者名称或互动字段进行处理时出现空值异常。
问题原因:
原始数据中部分文本字段为空,如果后续继续进行字符串判断或字段输出,就可能出现异常或结果为空。
解决方法:
在过滤记录后添加“缺失值填充”组件。文本字段填充为“未知作者”“未命名作品”等默认值,数值字段如果为空则填充为 0。这样可以保证后续数据流更加稳定。
第五部分:实验总结
本次实验完成了自媒体作品互动数据的清洗与预处理。整个过程使用助睿数智(Uniplore)一站式数据科学实验平台中的数据集成模块,通过可视化组件搭建了完整的 ETL 流程。
这次实验中,我没有直接把原始 CSV 数据导入数据库后就结束,而是根据后续分析目标设计了两条处理分支。
第一条分支用于全平台概况统计,保留所有平台数据,并按日期和平台进行分组聚合,最终输出summary_all_platforms表。
第二条分支用于重点平台内容分析,只保留 B站 和 CSDN 中浏览量大于 0 的有效记录,再经过缺失值填充、字段选择和字段规范后,输出content_analysis表。
通过这次实验,我进一步理解了数据清洗在数据分析流程中的作用。原始数据如果不经过筛选和标准化处理,后续做指标统计和可视化时很容易出现结果偏差。尤其是在多平台数据场景下,不同平台的字段质量和互动指标含义并不完全一致,必须先根据分析目标确定清洗规则。
本次实验最终生成的两张结果表,可以继续用于后续的自媒体运营分析、内容互动指标计算和数据可视化仪表盘搭建。