豆瓣读书数据深度解析:数值化处理与异常值检测

需积分: 0 21 下载量 88 浏览量 更新于2024-08-04 收藏 651KB PDF 举报
在本篇豆瓣读书数据分析1的文章中,主要关注的是如何对爬取的豆瓣读书网站上的图书数据进行预处理和分析。该数据集包含60,671条记录,存储在名为"books.xlsx"的Excel文件中。首先,数据清洗是一个关键步骤,目标是将非数值型数据(如书名、作者、出版社等)转换为数值类型以便于后续统计和可视化。 1. **数据导入与初步检查**: 使用Python的pandas库导入数据,删除未使用的第九列("Unnamed:9"),并通过`df.describe()`和`df.info()`方法来了解数据的基本统计信息和数据类型,发现所有数值型变量(如评分、页数、价格和评论数量)都被定义为对象类型。 2. **数据清洗:** - **评分**:已确认为数值型,无需额外处理。 - **页数**:由于存在'None'值,需要转换和处理。定义了`convert2int`函数或使用lambda表达式,将非数字的页数更改为0,并将其转换为整数类型。 - **价格**:同样存在非数字值,使用lambda表达式处理,将非数字的价格设为0,然后转换为浮点数。 - **评论数量**:此列也可能包含非数字值,采用类似方法处理。 3. **异常值与缺失值处理**: 分别通过`df['页数'].describe()`和`df['页数'].isnull().sum()`查看页数的分布和缺失值情况。对于'None'值,计算出具体数量,以决定是否需要进一步填充或删除。 4. **价格与评论数量分析**: - 价格为0的图书数量被计算,这有助于理解数据集中哪些图书可能没有定价信息。 - 评论数量列也使用相同的方法处理,确保其为数值型数据。 总结来说,这篇文章的核心内容是豆瓣读书数据的导入、初步清洗,特别强调了对非数值型数据的转换和异常值处理,如页数、价格和评论数量的标准化。这些步骤对于后续的数据分析至关重要,例如进行书籍销量、阅读热度等指标的计算和可视化。通过这些操作,数据变得更加适合进行定量分析和洞察。