下面内容摘录自《R 语言与数据科学的终极指南》专栏文章的部分内容,每篇文章都在 5000 字以上,质量平均分高达 94 分,看全文请点击下面链接:
欢迎订阅我们专栏
.......前面部分请点击上面链接看原文
认识dplyr
R语言的dplyr扩展包是数据处理的利器,其名称中的'd'代表数据框(dataframe),'plyr'谐音为英文中的钳子(plier),寓意为数据操作工具包。dplyr以其高效、直观的数据操作功能,成为了R语言用户处理数据的首选工具之一。在使用dplyr
之前,需要先安装并加载它:
install.packages("dplyr")
library(dplyr)
1、管道操作符 %>%
管道符 “%>%” 是 dplyr 扩展包中的一个重要功能,它大大简化了代码的书写和理解。管道符的作用是将左侧的输出结果作为输入传递给右侧的函数。通过使用管道符,可以避免中间变量的创建,使代码更加简洁和直观。
管道符 “%>%” 可以看作是一个连接操作,将多个函数调用串联在一起。它的语法如下:
data %>% function1 %>% function2 %>% function3
其中,data
是初始数据,function1
、function2
和 function3
是依次对数据进行处理的函数。
将 iris 数据集转换为 tibble
在前面有关创建数据框的内容中,已经对 dplyr
扩展包的 as_tibble()
函数的使用进行了介绍。然而,它还具备更多且更为强大的数据操作与预处理功能。从其“%>%
”符号展开,它的作用在于能够将前一步骤的结果直接作为参数传递给下一步的函数,由此省去了中间的赋值步骤,能够极大程度地减少内存中的对象,在简化代码的同时,也降低了内存的消耗。
例如,运用 dplyr
扩展包的 as_tibble()
函数来读取数据时,通过“%>%
”可以将 iris
传递给函数以成为指定对象。在使用 dplyr
扩展包的过程中,能够借助管道符将数据框 iris
转换为 tibble
类型。tibble
是 dplyr
所提供的一种经过改进的数据框,在打印和显示方面具有更出色的效果。
library(dplyr)
data(iris)
iris %>% as_tibble()
输出结果为:
# A tibble: 150 × 5
Sepal.Length Sepal.Width Petal.Length Petal.Width Species
<dbl> <dbl> <dbl> <dbl> <fct>
1 5.1 3.5 1.4 0.2 setosa
2 4.9 3 1.4 0.2 setosa
3 4.7 3.2 1.3 0.2 setosa
4 4.6 3.1 1.5 0.2 setosa
5 5 3.6 1.4 0.2 setosa
6 5.4 3.9 1.7 0.4 setosa
7 4.6 3.4 1.4 0.3 setosa
8 5 3.4 1.5 0.2 setosa
9 4.4 2.9 1.4 0.2 setosa
10 4.9 3.1 1.5 0.1 setosa
# ℹ 140 more rows
# ℹ Use `print(n = ...)` to see more rows
- 代码简洁:管道符可以将多个函数调用串联在一起,避免了中间变量的创建,使代码更加简洁。
- 易于阅读:通过管道符,代码的逻辑流程更加直观,易于阅读和理解。
- 减少内存消耗:管道符避免了中间结果的存储,减少了内存的占用。
2、列和行选择
列选择
使用dplyr的select()
函数可以方便地进行数据框列的选择。选择时可以指定列名,也可以使用负号(-)来排除某些列。例如,以下代码排除了Sepal.Length
和Sepal.Width
列,并显示数据框的前5行:
library(dplyr)
iris %>% select(-Sepal.Length, -Sepal.Width) %>% head(5)
输出结果为:
Petal.Length Petal.Width Species
1 1.4 0.2 setosa
2 1.4 0.2 setosa
3 1.3 0.2 setosa
4 1.5 0.2 setosa
5 1.4 0.2 setosa
行选择
dplyr提供了slice()
函数,用于选择数据框的特定行。例如,以下代码选择iris
数据集中第95行到第100行的数据:
.......后面部分请看原文
欢迎订阅我们专栏,深度系统地学习R语言。
为帮助大家更出色地掌握临床统计、数据挖掘以及人工智能建模的入门知识和应用,由于众多同学在计算机编程上经验欠缺,特此开设《R 语言与数据科学的终极指南》专栏。该专栏每周至少会定期更新三篇,直到整个专栏更新完成。每篇文章都在 5000 字以上,质量平均分高达 94 分。要提醒大家的是,每结束一个章节,专栏的优惠力度就会减小,当下正是订阅的最佳优惠时段,诚邀各位积极订阅!
专栏《R 语言与数据科学的终极指南》链接:https://blog.csdn.net/2301_79425796/category_12729892.html?spm=1001.2014.3001.5482