目录
图书数据清洗
1.图书数据清洗的概念
图书数据清洗是指对图书相关的数据进行预处理和整理,以确保数据的质量和准确性。清洗过程包括去除重复数据、处理缺失值、纠正错误数据、标准化数据格式等,以便后续的数据分析和可视化工作。
2.图书数据清洗及可视化的理论基础
数据清洗是指对收集到的原始数据进行预处理、规范化和整理,以便于后续的分析和可视化。常见的数据清洗技术包括数据去重、填充缺失值、处理异常值、处理重复值等。数据清洗的理论基础包括数据预处理方法、数据质量评估标准和数据清洗算法等。
3.图书数据清洗的现状及问题
数据质量问题:原始图书数据往往存在缺失值、错误值、重复值等质量问题,这就需要进行数据清洗。然而,清洗过程中可能会遇到一些困难,例如如何确定缺失值的填充方式、如何处理异常值等。
数据整合问题:图书数据来自不同渠道和来源,可能存在格式不统一、命名不一致等问题,这给数据的整合带来了困难。特别是在进行图书分类和标注时,需要解决不同分类系统之间的映射问题。
用户隐私问题:图书数据往往涉及用户的阅读行为和个人偏好等敏感信息。在进行数据可视化时,需要注意保护用户隐私,不能泄露个人身份和具体阅读内容。
4.图书数据清洗实验报告
1 读数据表
首先,我们读取原始数据。可以看出原始数据中有许多问题,例如当前价格带有人民币符号'¥',评论数含有文本等等。
2 提取价格数值
对于当前价格这一列使用正则表达式\d{1,4}\.{0,1}\d{0,2}
提取数值,保存为当前价格_match
。
3 提取评论数
对于评论数这一列使用正则表达式\d{1,4}\.{0,1}\d{0,2}
提取数值,保存为评论数_match
。
4 提取星级数值
对于星级这一列使用正则表达式\d{1,4}\.{0,1}\d{0,2}
提取数值,保存为星级_match
。
5 星级数值除以20
接着将提取出的星级数值除以20,将取值范围转换为[0,5]。
可以看到,经过列数值计算后的数据更适合数据的建模计算和可视化分析了。
6 出版信息字符串分割
接下来我们处理出版信息这一列,从原始数据中可以看到,这一列主要包含三个信息,分别是作者、出版日期、出版社。它们以“/”分隔,并且存放在一个数据单元中,我们将它们分别取出,然后单独存为三列。
7 书名去掉【】
书名信息中混合着简介信息,观察原始数据中书名一列,能找到一些规律。除去一些包含在 【】和 [] 中间的标注信息,剩余的内容中书名和其他内容基本是由空格隔开的。所以我们首先将【】和 [] 去掉,然后按照空格分隔字符串,第一个内容便是书名。
首先在书名
一列中去掉【】中的信息,使用正则表达式[\【].*[\】]将【】和其中的信息替换为空格,并将结果保存为书名_replace
:
8 书名去掉[]
接着在书名_replace
一列中去掉[]中的信息,使用正则表达式[\[].*[\]]将[]和其中的信息替换为空格,保存为书名_replace_replace
:
9 书名字符串分割
去除方括号【】和[]后我们把书名_replace_replace
列中文字根据空格进行字符串分割,并进行分列。
10 删除不需要的数据列
在原始数据中和上面操作生成数据中有许多冗余数据列,我们把不需要的数据列都删除掉。
11 数据字段重命名
最后,我们将数据集各列特征名称修改为各列数据的信息种类。
原始数据集中含有文字数字混杂、量纲不同等等问题。经过数据清理,原始数据集已经适用于进一步的建模计算和可视化处理了。