独家 | 用于数据清理的顶级R包(附资源)

2019 年 5 月 1 日 THU数据派

作者:Anna Kayfitz,CEO of StrategicDB Corp

翻译:顾宇华

校对:杨光

本文约1700字,建议阅读5分钟。

确保数据干净整洁应该始终是数据科学工作流程中首要也是最重要的部分。


数据清理是数据科学家最重要和最耗时的任务之一。以下是用于数据清理的顶级R包。



每天有数百万或数十亿的数据元素进入您的企业,其中不可避免的存在一些缺乏建立高效业务模型的必要质量的数据元素。然而,确保数据干净整洁应该始终是数据科学工作流程中首要也是最重要的部分。因为没有它,您将很难看到重要的内容,并可能由于数据重复,数据异常或缺少信息等原因做出错误的决策。

 

R,作为一种能够应用于统计计算和图形的开源语言,是最常用和最强大的数据编程工具之一。R提供了创建数据科学项目所需的所有工具,但是不管利用任何一种工具,它只能做到提供它接受到的数据相等同的信息。但是拥有了这些工具,R环境中有许多库可以在任何项目开始之前进行数据处理和操作。

 

探索数据


大多数您已经导入的用于探索数据系列的工具已存在于R平台中。

 

摘要(数据)


这个方便的命令只是概述了所有数据属性,显示了每个属性的最小值,最大值,中值,平均值和类别拆分。这是一种快速发现任何潜在数据异常的好方法。


接下来,您可以使用直方图来更好地理解数据的分布。这将可视化显示数据集或您特别希望观察的任何数字列中的任何异常值。

 

plyr包


您需要安装plyr软件包以创建直方图,使用标准R功能来安装库。

Install.packages(“plyr”)Library(plyr)Hist(YOUR_DATASET_NAME)

这能够创建数据的可视化,以快速发现任何异常。箱形图可视化使用相同的包,但分成四分位数以进行离群检测。这两个组合将很快告诉您是否需要限制数据集或仅在任何算法或统计建模中使用它的某些部分。

 

纠正错误


R有许多预先构建的方法来纠正数据错误,例如转换值,就像在Excel或SQL中那样,使用简单的逻辑,例如as.charater()将列转换为字符串。


但是,如果要开始更正在直方图或箱形图中看到的错误,则可以选择其他软件包执行此操作。

 

stringr包


stringr可以通过几种不同的方式帮助清理数据,包括修剪空格和替换某些不必要的单词。这些是非常标准的代码,结构为str_trim(YOUR_DATA_FIELD),它只是删除了空格。


但是,如何消除我们直方图告诉我们的异常?它需要比这更复杂,但作为一个基本的例子,我们可以告诉R用该字段的中值替换我们字段中的所有异常值。这将把所有东西都放在一起并消除异常偏见。

 

缺少值


在R中检查不完整的数据并对该字段执行和操作非常简单。例如,此函数将完全消除所选数据列中缺少的值。

Na.omit(YOUR_DATA_COLUMN)

有类似的选项可以用0或N / A替换空白值,具体取决于字段类型,并提高数据集的一致性。

 

tidyr包


tidyr包旨在整理您的数据。它的工作原理是识别数据集中的变量,并使用提供的工具将它们移动到具有三个主要功能的列或gather(),separate()和spread()。


gather()函数采用多列并将它们收集到键值对中。举个例子,假设您有考试成绩数据。


名称

考试A

考试B

约翰

55

80

麦克

76

90

山姆

45

75


gather收集功能通过将其转换为可用的列来完成。


名称

考试

成绩

约翰

A

55

麦克

A

76

山姆

A

45

约翰

B

80

麦克

B

90

山姆

B

75


现在我们真的能够分析考试成绩。单独和传播函数做类似的事情,一旦你有了包,你可以探索,但最终根据需要你的数据。


这里有一些其他的注释包可能对R中的数据清理有用:

 

  • Purr包


purr包专为数据整理而设计。它与plyr包非常相似,虽然年龄较大,但有些用户只是觉得它的使用更容易,功能也更标准化。

 

  • sqldf包


很多R用户更习惯用SQL语言而不是R编码。这个函数允许你在R studio中编写SQL代码来选择你的数据元素

 

  • Janitor包


该软件包能够通过多个列查找重复项,并轻松地从您的数据框中创建友好列。它甚至还有一个get_dupes()函数,用于在多行数据中查找重复值。如果您希望以更高级的方式重复数据删除,例如,查找不同的组合或使用模糊逻辑,您可能需要查看重复数据删除工具。

 

  • splitstackshape包


这是一个较旧的包,可以使用数据框列中的逗号分隔值。用于调查或文本分析准备。


R拥有大量的软件包,本文只是触及了它可以做的事情的表面。随着新的库一直涌现,在开始任何新项目之前进行研究并获得正确的库是非常重要的。


学习资源:


  • 在线和基于网络:分析,数据挖掘,数据科学,机器学习教育

    https://www.kdnuggets.com/education/online.html

  • 分析,数据科学,数据挖掘和机器学习软件

    https://www.kdnuggets.com/software/index.html


相关文章:


  • 不要在真空中进行分析

    https://www.kdnuggets.com/2019/02/mode-dont-do-analysis-vacuum.html

  • 在Jupyter中运行R和Python

    https://www.kdnuggets.com/2019/02/running-r-and-python-in-jupyter.html

  • 2018年数据科学和人工智能的前七大R套餐

    https://www.kdnuggets.com/2019/01/vazquez-2018-top-7-r-packages.html


作者简介:


Anna Kayfitz,StrategicDB Corp首席执行官,该公司是一家数据清理和分析公司。她拥有Schulich商学院的MBA学位,在创建StrategicDB之前,他在数据分析和市场营销方面工作了10多年。


原文标题:

Top R Packages for Data Cleaning

原文链接:

https://www.kdnuggets.com/2019/03/top-r-packages-data-cleaning.html


译者简介

顾宇华,帝国理工与IE商学院毕业生,现为SxGroup咨询实习生。热情活泼,积极乐观,对数据科学充满热情。

翻译组招募信息

工作内容:需要一颗细致的心,将选取好的外文文章翻译成流畅的中文。如果你是数据科学/统计学/计算机类的留学生,或在海外从事相关工作,或对自己外语水平有信心的朋友欢迎加入翻译小组。

你能得到:定期的翻译培训提高志愿者的翻译水平,提高对于数据科学前沿的认知,海外的朋友可以和国内技术应用发展保持联系,THU数据派产学研的背景为志愿者带来好的发展机遇。

其他福利:来自于名企的数据科学工作者,北大清华以及海外等名校学生他们都将成为你在翻译小组的伙伴。


点击文末“阅读原文”加入数据派团队~

转载须知

如需转载,请在开篇显著位置注明作者和出处(转自:数据派ID:datapi),并在文章结尾放置数据派醒目二维码。有原创标识文章,请发送【文章名称-待授权公众号名称及ID】至联系邮箱,申请白名单授权并按要求编辑。

发布后请将链接反馈至联系邮箱(见下方)。未经许可的转载以及改编者,我们将依法追究其法律责任。


点击“阅读原文”拥抱组织

登录查看更多
0

相关内容

数据科学(英語:data science)是一门利用数据学习知识的学科,其目标是通过从数据中提取出有价值的部分来生产数据产品。 它结合了诸多领域中的理论和技术,包括应用数学、统计、模式识别、机器学习、数据可视化、数据仓库以及高性能计算。 数据科学通过运用各种相关的数据来帮助非专业人士理解问题。
【2020新书】实战R语言4,323页pdf
专知会员服务
100+阅读 · 2020年7月1日
【实用书】Python机器学习Scikit-Learn应用指南,247页pdf
专知会员服务
264+阅读 · 2020年6月10日
Python地理数据处理,362页pdf,Geoprocessing with Python
专知会员服务
113+阅读 · 2020年5月24日
干净的数据:数据清洗入门与实践,204页pdf
专知会员服务
161+阅读 · 2020年5月14日
【资源】100+本免费数据科学书
专知会员服务
107+阅读 · 2020年3月17日
将Python用于NLP:Pattern 库简介
Python程序员
15+阅读 · 2019年6月7日
文本分析与可视化
Python程序员
9+阅读 · 2019年2月28日
资源 | 机器学习高质量数据集大合辑(附链接)
数据派THU
6+阅读 · 2018年11月25日
可视化多维数据的艺术
论智
10+阅读 · 2018年1月23日
无需一行代码就能搞定机器学习的开源神器
人工智能头条
6+阅读 · 2017年11月7日
python pandas 数据处理
Python技术博文
4+阅读 · 2017年8月30日
Arxiv
8+阅读 · 2019年3月28日
Hardness-Aware Deep Metric Learning
Arxiv
6+阅读 · 2019年3月13日
Arxiv
8+阅读 · 2018年5月15日
Arxiv
5+阅读 · 2018年3月6日
VIP会员
相关VIP内容
【2020新书】实战R语言4,323页pdf
专知会员服务
100+阅读 · 2020年7月1日
【实用书】Python机器学习Scikit-Learn应用指南,247页pdf
专知会员服务
264+阅读 · 2020年6月10日
Python地理数据处理,362页pdf,Geoprocessing with Python
专知会员服务
113+阅读 · 2020年5月24日
干净的数据:数据清洗入门与实践,204页pdf
专知会员服务
161+阅读 · 2020年5月14日
【资源】100+本免费数据科学书
专知会员服务
107+阅读 · 2020年3月17日
相关资讯
将Python用于NLP:Pattern 库简介
Python程序员
15+阅读 · 2019年6月7日
文本分析与可视化
Python程序员
9+阅读 · 2019年2月28日
资源 | 机器学习高质量数据集大合辑(附链接)
数据派THU
6+阅读 · 2018年11月25日
可视化多维数据的艺术
论智
10+阅读 · 2018年1月23日
无需一行代码就能搞定机器学习的开源神器
人工智能头条
6+阅读 · 2017年11月7日
python pandas 数据处理
Python技术博文
4+阅读 · 2017年8月30日
Top
微信扫码咨询专知VIP会员