商业数据分析实验7-1_自媒体运营分析-数据清洗与预处理
商业数据分析实验7-1:自媒体运营分析-数据清洗与预处理1 实验目的本实验基于全班同学在多平台发布的作品互动数据使用助睿ETL完成数据清洗与预处理输出两张核心数据表为后续特征工程与可视化分析奠定基础。2 实验环境实验平台助睿在线实验平台 https://lab.guilian.cn/数据处理工具助睿ETL数据集成平台3 核心设计思路3.1 为什么需要数据清洗采集到的原始数据往往不能直接用于分析需要先做清洗。观察 自媒体作品数据明细.csv 这份数据可以发现几个问题平台冗余数据包含了B站、CSDN、微信、知乎、小红书等多个平台但微信、知乎等平台的浏览数量几乎全是0。这些平台虽然有作品记录但缺乏核心的浏览数据无法支撑有意义的分析。无效记录部分作品的浏览数量、点赞数量、收藏数量全部为0。这些记录可能是采集失败也可能是作品确实无人问津但无论如何它们对分析没有贡献。字段缺失点赞、收藏、分享等字段中存在空值如果不处理后续计算会报错。数据清洗要做的就是把这些问题逐一解决。3.2 数据处理流程本次实验有一个特殊之处后续可视化仪表盘需要同时展示两类信息。第一类是“全平台概况”——全班总共发了多少内容覆盖了几个平台总浏览和总互动是多少这些数字需要基于所有平台的原始数据来统计哪怕浏览数为0也要计入作品数。第二类是“重点平台深度分析”——B站和CSDN的具体表现如何播放量、阅读量、互动率是多少这些分析只需要B站和CSDN的有效数据浏览数大于0的记录。两类信息对数据的要求不同所以在ETL中需要做分支处理4 实验步骤4.1创建转换流“创建全平台概况表”执行sql脚本创建了summary_all_platforms 表。CREATE TABLE summary_all_platforms (crawl_date DATE NOT NULL COMMENT 采集日期,platform VARCHAR(20) NOT NULL COMMENT 平台名称,content_count INT NOT NULL DEFAULT 0 COMMENT 作品数量,total_views INT NOT NULL DEFAULT 0 COMMENT 总浏览数,total_likes INT NOT NULL DEFAULT 0 COMMENT 总点赞数,total_favorites INT NOT NULL DEFAULT 0 COMMENT 总收藏数,total_shares INT NOT NULL DEFAULT 0 COMMENT 总分享数,total_coins INT NOT NULL DEFAULT 0 COMMENT 总投币数仅B站,total_recommend INT NOT NULL DEFAULT 0 COMMENT 总推荐数仅微信,total_likes_zhihu INT NOT NULL DEFAULT 0 COMMENT 总喜欢数仅知乎,total_approvals INT NOT NULL DEFAULT 0 COMMENT 总赞同数仅知乎,-- 联合主键同一天同一个平台唯一一条汇总数据PRIMARY KEY (crawl_date, platform));4.2新建转换流“创建内容分析表”执行sql脚本创建了content_analysis 表。DROP TABLE IF EXISTS content_analysis;CREATE TABLE content_analysis (date DATE NOT NULL COMMENT 采集日期,author_name VARCHAR(100) COMMENT 作者昵称,title VARCHAR(500) COMMENT 作品标题,platform VARCHAR(20) NOT NULL COMMENT 平台B站 / CSDN,likes INT NOT NULL DEFAULT 0 COMMENT 点赞数,favorites INT NOT NULL DEFAULT 0 COMMENT 收藏数,shares INT NOT NULL DEFAULT 0 COMMENT 分享数,coins INT NOT NULL DEFAULT 0 COMMENT 投币数仅B站,views INT NOT NULL DEFAULT 0 COMMENT 播放量/阅读量,url VARCHAR(500) NOT NULL COMMENT 作品链接,total_interaction INT NOT NULL DEFAULT 0 COMMENT 互动总数,has_best TINYINT(1) NOT NULL DEFAULT 0 COMMENT 是否含“保姆级”0否 1是,has_lowcode TINYINT(1) NOT NULL DEFAULT 0 COMMENT 是否含“零代码”0否 1是,has_practice TINYINT(1) NOT NULL DEFAULT 0 COMMENT 是否含“实战”0否 1是,has_tutorial TINYINT(1) NOT NULL DEFAULT 0 COMMENT 是否含“教程/指南”0否 1是,has_pit TINYINT(1) NOT NULL DEFAULT 0 COMMENT 是否含“踩坑”0否 1是,INDEX idx_date_url (date, url));4.3新建转换流“数据清洗与预处理”处理流程图如下4.4 组件配置5 输出预览