便于格式化和清洗数据的Python工具包合集
本文由 飞鲸体育 翻译,转载注明出处。 英文原文:https://blog.modeanalytics.com/python-data-cleaning-libraries/ 原文作者:Melissa Bierly
现实世界是混杂的,数据也是如此。最近的一项调查显示,数据科学家 60% 的时间都花在数据的清理上。 而且不幸的是,57% 的人认为这是他们工作中最头疼的部分。
清洗数据可能非常耗时,但是有很多工具的出现使这项重要的工作变得稍微可以承受一点。 Python 社区提供了大量第三方库,让数据变得有序且易读——从格式化 DataFrame 到匿名化数据集。
如果你觉得那些库在这方面有用可以告诉我们——我们一直致力于优化和维护放入 Mode Python Notebooks 的库。
对于数据科学家而言,太糟糕的清洁并不像对这个小家伙那样有趣。
Dora
Dora 专为探索性分析而设计。尤其是自动化中最头疼的部分,比如说特征的选取和提取、可视化,当然还有数据清洗。 而数据清洗相关的函数可以做到以下几个方面:
- 读取缺省数据和无标准化的数据
- 填补缺省数据
- 标准化数据
开发者:Nathan Epstein 更多信息:https://github.com/NathanEpstein/Dora
datacleaner
datacleaner 能清洗你的数据——不过只有在你的数据是 pandas DataFrame 实例的时候才可以。开发者 Randy Olson 说:“datacleaner 不是魔法,它无法自动解析你那些没有结构化的数据。”
它可以删除包含缺省值的行,或者利用列的众数或者中位数填充缺省值,将非数值型数据转化为数值型数据。这个库虽然很新,但考虑到 DataFrame 是 Python 数据分析的基本数据结构,因此值得一试。
开发者:Randy Olson 更多信息:https://github.com/rhiever/datacleaner
PrettyPandas
DataFrame 虽然功能很强大,但它们无法制作出可以直接给老板看的表。PrettyPandas 利用了 pandas 风格 API 将 DataFrame 转换成可以演示的表格。产生数据摘要、设置风格、调整数据格式,列和行。从而获得强大、可读性高的 使用文档。
开发者:Henry Hammond 更多信息:https://github.com/HHammond/PrettyPandas
tabulate
tabulate 可以让你仅仅用一个函数调用就可以打印出小而漂亮的表格。非常适合于通过调整小数点、标题等列对齐、数据格式等,可以让表格可读性更高。
其中一个超酷的功能是能够以各种格式输出数据:HTML、PHP 或者 Markdown Extra,这样你可以用其他的工具或语言继续处理表格数据。
开发者:Sergey Astanin 更多资料:https://pypi.python.org/pypi/tabulate
scrubadub
医疗健康领域和金融领域等数据科学家经常需要对数据集进行匿名化。scrubadub 可以将 私人信息 (PII) 从文本从移除。例如:
- 姓名 (名词)
- Email地址
- 网络链接
- 电话号码
- 用户名/密码组
- Skype 用户名
- 社会保险号
该文档很好的展示了通过哪些途径你可以自定义 scrubadub 的行为,例如定义新的 PII 类型或者排除某些特定类型的 PII。
开发者:Datascope Analytics 更多资料:http://scrubadub.readthedocs.io/en/stable/index.html
Arrow
老实说:在 Python 里处理日期和时间是一件痛苦的事。因为它不会自动识别本地时区,得用好几行不那么令人愉快的代码来转换时区和时间戳。
Arrow 旨于解决这个问题并且填补这些功能差距,从而让你可以用更少的代码和引入库来完成日期和时间的处理。跟 Python 的标准时间库不同的是,Arrow 默认自动识别时区和 UTC。你可以只用一行代码转换时区或者解析时间字符串。
开发者:Chris Smith 更多资料:http://arrow.readthedocs.io/en/latest/
Beautifier
Beautifier 的使命很简单:清洗 URL 和 Email 地址并让美化它们。你可以按域名和用户名来解析 email;可以按域名和参数来解析 URL。(UTM 或者标记)
开发者:Sachin Philip Mathew 更多资料:https://github.com/sachinvettithanam/beautifier
ftfy
ftfy (fixes text for you) 将杂乱的 Unicode 转化为可识别的 Unicode。简单的说,它修复了所有的垃圾字符。比如:
- “quotesâ€x9d 变成 "quotes";
- ü 变成 ü;
- <3 变成 <3.
如果你每天使用文本,那么这个库就像一个用户所说的那样,是“一个方便的魔法”。
开发者:Luminoso 更多资料:https://github.com/LuminosoInsight/python-ftfy
更多关于数据清洗的文章
- What every data scientist should know about data anonymization (Katharina Rasch)
- Cleaning data in Python (University of Toronto Map & Data Library)
- Data Cleaning with Python – MoMA’s Artwork Collection (Dataquest)

立即测试

购买咨询