独家 | 用于数据清理的顶级R包(附资源)-阿里云开发者社区

开发者社区> 数据派> 正文
登录阅读全文

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

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

作者:Anna Kayfitz,CEO of StrategicDB Corp

文章来源:微信公众号 数据派THU

翻译:顾宇华

校对:杨光

----

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

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

image.png

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

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()函数采用多列并将它们收集到键值对中。举个例子,假设您有考试成绩数据。

image.png

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

image.png

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

这里有一些其他的注释包可能对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

作者简介:

image.png

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数据派产学研的背景为志愿者带来好的发展机遇。

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

原文

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
+ 订阅

官网链接