相关动态
使用dplyr进行数据操作(30个实例)
2024-12-21 18:25


dplyr软件包是R中功能最强大,最受欢迎的软件包之一。该软件包由最受欢迎的R程序员Hadley Wickham编写,他编写了许多有用的R软件包,如ggplot2,tidyr等。本文包括一些示例和如何使用使用dplyr软件包来清理和转换数据。这是一个关于数据操作和数据处理的完整教程。

什么是dplyr?

dplyr是一个强大的R软件包,用于处理,清理和汇总非结构化数据。简而言之,它使得R中的数据探索和数据操作变得简单快捷。

dplyr有什么特别之处?

软件包“dplyr”包含许多主要使用的数据操作功能,例如应用过滤器,选择特定列,排序数据,添加或删除列以及聚合数据。这个包的另一个最重要的优点是学习和使用dplyr函数非常容易。也很容易回想起这些功能。例如,filter()用于过滤行。

dplyr与基本R函数

dplyr函数处理速度比基本R函数快。 这是因为dplyr函数是以计算有效的方式编写的。 它们在语法上也更稳定,并且比向量更好地支持数据帧。

SQL查询与dplyr

数十年来人们一直在使用SQL来分析数据。 每个现代数据分析软件如Python,R,SAS等都支持SQL命令。 但SQL从未被设计为执行数据分析。 它专为查询和管理数据而设计。 有许多数据分析操作在SQL失败或使简单的事情困难。 例如,计算多个变量的中位数,将宽格式数据转换为长格式等。而dplyr软件包的设计目的是进行数据分析。

dplyr函数的名称类似于SQL命令,如用于选择变量的select(),group_by() - 通过对变量进行分组来组合数据,join() - 将两个数据集合在一起。 还包括inner_join()和left_join()。 它也支持SQL常用的子查询。

如何安装和加载dplyr软件包

要安装dplyr软件包,请键入以下命令。



要加载dplyr包,请在下面输入命令



常用的dplyr的函数

数据:各国的收入数据

在本教程中,我们使用以下数据,其中包含2002年至2015年各州产生的收入。注意:此数据不包含各州的实际收入数据。

该数据集包含51个观测值(行)和16个变量(列)。 下面显示了数据集前6行的快照。

如何加载数据

提交以下代码。 在下面的代码中更改文件路径。


实例1:随机选择N行

sample_n函数从数据框(或表)中随机选择行。 函数的第二个参数告诉R要选择的行数。

实例2:随机选择总行的N%

sample_frac函数随机返回N%的行。 在下面的例子中,它随机返回10%的行。


实例3:基于所有变量(完整行)删除重复行

distinct函数用于消除重复行


在此数据集中,我们取前6行重复一次共12行,去冗余返回6行

实例4:基于单个变量删除重复行

.keep_all函数用于保留输出数据框中的所有其他变量。



dim(x2)

按某列去冗余,52行变为19行,只保留第一次出现的行

实例5:基于多个变量删除重复行

在下面的例子中,我们使用两个变量 - Index,Y2010来确定唯一性。



实例6:选择变量(或列)

假设你被要求只选择几个变量。 下面的代码选择变量“Index”,从“State”到“Y2008”的列。


实例7:删除变量

变量前面的减号表示R放弃变量。


上面的代码也可以写成:

实例8:选择或删除以”Y”开始的变量

starts_with()函数用于选择以字母开头的变量。


在starts_with()之前添加一个负号表示将删除以’Y’开始的变量


以下函数可帮助您根据名称选择变量。

实例9:选择变量名中包含”l”的变量



实例10:重新排列变量

下面的代码保持变量’State’在前面,其余的变量跟随其后。


实例11:变量重命名

rename函数可用于重命名变量。
在下面的代码中,我们将’Index’变量重命名为’Index1’。

实例12:选择行

假设你需要子集数据。 您想过滤行并仅保留Index等于A的那些值。


实例13:多重选择标准

%in%运算符可用于选择多个项目。 在下面的程序中,我们告诉R选择Index列中的’A’和’C’行。


实例14:选择标准中的’AND’条件

假设你需要应用’AND’条件。 在这种情况下,我们在“索引”栏中选择’A’和’C’的数据,并在2002年收入超过130万美元。

实例15:选择标准中的’OR’条件

‘|’表示逻辑条件中的或。 它意味着这两个条件中的任何一个。

实例16:非条件

“!” 符号用于反转逻辑条件。


实例17:包含条件

grepl函数用于搜索模式匹配。 在下面的代码中,我们正在查找state列包含“Ar”的记录。



实例18:总结选定的变量

在下面的例子中,我们计算了变量Y2015的平均值和中位数。



实例19:总结多个变量

在下面的例子中,我们计算了记录的数量,变量Y2005和Y2006的平均值和中位数。 summarise_at函数允许我们通过名称选择多个变量。



实例20:用自定义函数进行总结

我们也可以在汇总功能中使用自定义函数。 在这种情况下,我们计算记录数,缺失值的数量,变量Y2011和Y2012的平均数和中位数。 点(.)表示函数的第二个参数中指定的每个变量。

实例21:总结所有的数字变量

summarise_if函数允许您有条件地总结。

或者

实例22:总结因子变量

我们正在检查分类(因子)变量中的级别/类别数量和缺失观察数量。

实例23:按多个变量排序数据

arrange()函数的默认排序顺序是递增的。 在这个例子中,我们通过多个变量来排序数据。

假设你需要按降序对其中一个变量进行排序,而对其他变量则按升序排序。

实例24:按分类变量汇总数据

我们通过变量Index计算变量Y2011和Y2012的变量的计数和均值。



或者


实例25:过滤分类变量中的数据

假设您需要从“A”,“C”和“I”类别的变量索引中抽取前两行。

实例26:通过分类变量选择第三最大值

我们正在通过变量Index计算变量Y2015的第三个最大值。 以下代码首先仅选择两个变量Index和Y2015。 然后它用’A’,’C’和’I’过滤变量索引,然后对变量进行分组,然后按降序对变量Y2015进行排序。 最后,它选择第三行。

像SQL一样,dplyr使用窗口函数来将数据分组。 它返回值的向量。 我们可以使用min_rank()函数来计算上例中的rank,

实例27:总结,分组和排序

在这种情况下,我们通过变量Index来计算变量Y2014和Y2015的均值。 然后通过计算的变量Y2015的均值对结果进行排序。



实例28:创建一个新变量

以下代码用变量Y2015除以Y2014的的值其命名为“change”。



实例29:将所有变量乘以1000

它创建新的变量并用后缀“_new”命名。



实例30:计算变量的排名

假设您需要计算变量Y2008至Y2010的排名。添加排名到列尾。



您在阅读中,有什么见解,请评论。

    以上就是本篇文章【使用dplyr进行数据操作(30个实例)】的全部内容了,欢迎阅览 ! 文章地址:http://ww.kub2b.com/news/10034.html
     栏目首页      相关文章      动态      同类文章      热门文章      网站地图      返回首页 企库往资讯移动站 http://ww.kub2b.com/mobile/ , 查看更多   
最新文章
智能家居“伪智能”、直播间买到的羽绒服穿不了……江苏一季度消费投诉热点出炉
4月9日,江苏省消费者权益保护委员会发布2025年一季度消费投诉及舆情热点报告。一季度全省消保委系统受理投诉51464件,接待消费
智能手机传感器及作用大盘点手机的作用「智能手机传感器及作用大盘点」
已经成为不可思议的小机器,几十年前,这样的设备只存在于科幻小说。如果回到几十年前,人们可能会认为是魔法。现在已经成为最普
您知道唐僧师徒在南通长牌中分别是谁吗?
《西游记》中,猪八戒与孙悟空对峙打斗时,曾经这样说“放生遭贬出天关,福陵山下图家业。我因有罪错投胎,俗名唤做猪刚鬣”,这
【华为】新版模拟器eNSP Lite安装攻略提前解锁华为手机模拟器「【华为】新版模拟器eNSP Lite安装攻略提前解锁」
新版模拟器eNSP Lite资源下载:华为新版模拟器eNSPLite镜像资源资源-CSDN文库    最近华为发布了新版模拟器eNSP Lite
Android监控虚拟键 android手机虚拟摄像头手机IM「Android监控虚拟键 android手机虚拟摄像头」
在工作中,camera这一块上,可能会有各种各样的需求。比如有人想新增一个虚拟摄像头,当用户app打开摄像头设备时,打开的不是系
微信语音怎么提取到电脑【苹果安卓手机】苹果手机备份到电脑「微信语音怎么提取到电脑【苹果安卓手机】」
微信语音中可能保存着一些温馨记忆,如年迈父母发给自己的语音消息,微信语音中也可能保存着知识技能,如培训老师发给自己的各种
修成正果!安东尼已被通知入选2025年奈史密斯篮球名人堂
北京时间4月3日讯 据Shams Charania报道,十次入选NBA全明星的卡梅隆·安东尼已获通知,他被选入2025年奈史密斯篮球名人堂。曾六
在任意手机上使用带有图形化界面(GUI)的完整Linuxlinux手机「在任意手机上使用带有图形化界面(GUI)的完整Linux」
不过,在我们今天的任务中只有运行者两者。这篇教程不会讲述任何运行后的自定义使用。不同于之前的两次尝试——安装Window
腾讯史上最大就业计划技术岗超六成,大厂加码AI人才校招
4月17日,腾讯宣布启动史上最大就业计划,三年内将新增28000个实习岗位并加大转化录用,仅2025年将迎来10000名校招实习生。在大
纪律处罚消息两则:海港主教练穆斯卡特停赛1场罚款1万 & 广东男篮外援莫兰德罚款3万
各CBA俱乐部、赛区:2025年4月8日,2024-2025赛季CBA联赛季后赛12进8阶段场序467,上海久事大鲨鱼俱乐部久事篮球队与广东宏远华