- 本书赞誉
- 前言
- 目标读者
- 不适合阅读本书的读者
- 本书结构
- 什么是数据处理
- 遇到困难怎么办
- 排版约定
- 使用代码示例
- 致谢
- 第 1 章 Python 简介
- 第 2 章 Python 基础
- 第 3 章 供机器读取的数据
- 第 4 章 处理 Excel 文件
- 第 5 章 处理 PDF 文件 以及用 Python 解决问题
- 第 6 章 数据获取与存储
- 第 7 章 数据清洗:研究、匹配与格式化
- 第 8 章 数据清洗:标准化和脚本化
- 第 9 章 数据探索和分析
- 第 10 章 展示数据
- 第 11 章 网页抓取:获取并存储网络数据
- 第 12 章 高级网页抓取:屏幕抓取器与爬虫
- 第 13 章 应用编程接口
- 第 14 章 自动化和规模化
- 第 15 章 结论
- 附录 A 编程语言对比
- 附录 B 初学者的 Python 学习资源
- 附录 C 学习命令行
- 附录 D 高级 Python 设置
- 附录 E Python 陷阱
- 附录 F IPython 指南
- 附录 G 使用亚马逊网络服务
- 关于作者
- 关于封面
7.3 小结
本章你学习了数据清洗的基础知识,以及在数据处理过程中数据清洗的重要性。你用到了一些 MICS 原始数据,并直接与这些数据进行了交互。现在你学会了观察数据,并能判断你可能会遇到的数据清洗问题。现在你还可以找到并删除错误数据和重复数据。
表 7-2 中详细描述了本章讲到的新概念和新库。
表7-2:Python编程的新概念和新库
概念/库 | 作用 |
列表生成式 | 利用迭代器、函数和 / 或 if 语句,可以方便快速地创建列表,用于进一步清洗和处理数据 |
字典的 values 方法 | 返回由字典的值组成的列表。在测试内部元素时很有用 |
in 和 not in 语句 | 测试内部元素。通常用于字符串或列表。返回一个布尔值 |
列表的 remove 方法 | 传入一个元素,删除列表中第一个匹配的元素。对于一个创建好的列表,如果你确切知道要删除的元素是什么,这个方法很有用 |
enumerate 方法 | 传入任意可迭代对象,返回一个由索引编号和对应的值组成的元组 |
列表的 index 方法 | 传入一个元素,返回列表中第一个匹配对象的索引编号。如果没有匹配的话,返回 None |
字符串的 format 方法 | 可以将一系列数据轻松转换成易读的字符串。用 {} 作为数据占位符,传入数据的数量应与其数量相同。还可以用于字典的键名。有许多字符串格式化方法可用 |
字符串格式化(.4f、.2%) | 数学标记(flag),可以将数字转换成简单易读的字符串 |
datetime 库的 strptime 和 strftime 方法 | 可以将 Python 日期对象轻松转换成字符串,以及将字符串转换成日期对象 |
datetime 库的 timedelta 对象 | 表示两个 Python 日期对象之间的时间差,或者用于修改日期对象(例如增加时间或减少时间) |
if not 语句 | 测试其后语句的值是否非 True,与 if 语句的布尔逻辑相反 |
is 语句 | 测试第一个对象和第二个对象是否相同。在类型测试方面很有用(例如:is None、is list)。更多关于 is 的内容可参阅附录 E |
字符串的 isdigit 和 isalpha 方法 | 测试字符串对象是否只包含数字或只包含字母。返回一个布尔值 |
字符串的 find 方法 | 传入一个子字符串,返回它在字符串中的索引位置。如果没有找到匹配,则返回 -1 |
Python 集合对象(https://docs.python.org/2/library/sets.html) | 唯一元素的集合类。与列表的用法很相似,但没有重复值。有许多集合对比的方法(union、intersection、difference) |
numpy 包(http://www.numpy.org/) | Python 基本数学库,是 SciPy 栈的一部分 |
FuzzyWuzzy 库(https://github.com/seatgeek/fuzzywuzzy) | 用于字符串模糊匹配的库 |
正则表达式(https://en.wikipedia.org/wiki/Regular_expression)和 Python 的 re 库(https://docs.python.org/2/library/re.html) | 可以用来编写模式并在字符串中寻找匹配 |
在下一章里,你还会继续练习这些数据清洗和数据分析技术,并利用这些技术更好地安排和重复数据清洗任务。我们会讲到数据归一化和标准化,以及如何将数据清洗脚本化并对脚本进行测试。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论