作者: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】至联系邮箱,申请白名单授权并按要求编辑。

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

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

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

  1. python的顶级库_三大用于数据科学的顶级Python库

    Python有许多吸引力,如效率,代码可读性和速度,使其成为数据科学爱好者的首选编程语言.Python通常是希望升级其应用程序功能的数据科学家和机器学习专家的首选. 由于其广泛的用途,Python拥有 ...

  2. python 生成空白矩阵_3个用于数据科学的顶级Python库

    用这些库把Python变成一个科学数据分析和建模工具. image by Opensource.com Python许多吸引人的特点如效率.代码可读性和速度使它成为数据科学爱好者的首选编程语言.对于希 ...

  3. 独家 | 机器学习数据准备技术之旅(附链接)

    作者:Jason Brownlee 翻译:李嘉骐 校对:王晓颖 本文约4300字,建议阅读9分钟 本文介绍了机器学习中常用的数据准备技术. 标签:初学者 机器学习 数据准备 特征工程 机器学习项目中的 ...

  4. 顶级数据恢复_顶级R数据科学图书馆

    顶级数据恢复 Data science is the discipline of making data useful 数据科学是使数据有用的学科 When we talk about the top ...

  5. dplyr包功能(数据清理、过滤、合并R实现)

    目录 去除重复项 选取随机样本 变量重命名 select()函数 filter()函数 summarise()函数 arrange()函数 group_by() 函数 mutate()函数 join( ...

  6. 使用R语言的正确姿势,R包干货奉献

    生物信息学习的正确姿势 NGS系列文章包括NGS基础.在线绘图.转录组分析 (Nature重磅综述|关于RNA-seq你想知道的全在这).ChIP-seq分析 (ChIP-seq基本分析流程).单细胞 ...

  7. R包开发每日中国天气

    R的极客理想系列文章,涵盖了R的思想,使用,工具,创新等的一系列要点,以我个人的学习和体验去诠释R的强大. R语言作为统计学一门语言,一直在小众领域闪耀着光芒.直到大数据的爆发,R语言变成了一门炙手可 ...

  8. 生信分析之R语言常用R包一步下载

    系列文章目录 生信分析第一步:R语言基础应用以及数据前处理 文章目录 R包下载 使用GEOquery包下载原始数据 芯片数据读取 GEOquery 下载并读取数据 提取GEO表达矩阵 提取GEO注释信 ...

  9. 不用R包分析NIPT

    比如从NCBI上面下载的优讯医学上传数据,发现用R包用不了时,可以这么做: 1.进行比对 # bwa mem 目前用的比较多 bwa mem -t 16 -M -Y hg19.fa SRR604060 ...

最新文章

  1. BZOJ-2190-仪仗队-SDOI2008-欧拉函数
  2. C#委托Action、ActionT、FuncT、PredicateT
  3. 长安大学研究生院计算机学院,研究生教育
  4. python自学可以吗_可以自学python吗?
  5. html如何将多个复选框组织成一组_[Selenium]18.如何处理一组元素
  6. php在线语音,PHP在线语音合成
  7. 4. PHP递增/递减运算符
  8. Hive 星型模型入门
  9. 微软MDT 安装与配置(一)
  10. 产品读书《创新者的窘境》
  11. 光纤与光通信-基础知识
  12. 根据官方数据制作中国省市区数据库
  13. python 暑期培训
  14. 《Web前端工程师修炼之道》学习笔记
  15. JavaWeb-狂神-P11
  16. Remote Development Tips and Tricks
  17. 4个查询网站收录的方式,你中意哪个查询方式呢?
  18. 我们为什么需要DTO(数据传输对象)
  19. 基于GN算法(Girvan-Newman)实现社交网络中社区划分
  20. 解决fonts.googleapis.com/css加载卡,谷歌字体本地加载下载

热门文章

  1. python多线程的几种方法
  2. 4个开源在线调查工具
  3. 近期笔试小结(附数据库工程师面试准备)
  4. DoS***原理和防御方法
  5. aix-syslog
  6. 从命令行修改你的Mac DNS(主要在在线恢复mac系统不能上网时候使用)
  7. .Net应该学什么怎么学(一)
  8. 用VB6写的一个简单俄罗斯方块代码
  9. java for xp_20155328 《Java程序设计》实验三 敏捷开发与XP实践 实验报告
  10. 拦截httpservlet返回码_设计 API 接口,实现统一格式返回