R包学习-dplyr

一、安装和加载R包
1.镜像设置:
2.安装:
CRAN:install.packages(“包”)
或者 Biocductor: BiocManager::install(“包”)
3. 加载:
library(包)
或 require(包)
#示例:
options("repos" = c(CRAN="https://mirrors.tuna.tsinghua.edu.cn/CRAN/"))
options(BioC_mirror="https://mirrors.ustc.edu.cn/bioc/")
install.packages("dplyr")
library(dplyr)
二、dplyr五个基础函数
(以下示例数据皆为 内置数据集iris的简化版: test <- iris[c(1:2,51:52,101:102),]
)

1. 新增列 :mutate()

2. 按列筛选 :select()
2.1 按列号筛选

2.2 按列名筛选

差别在这里:
选择 字符向量 中的列,select中不能直接使用字符向量筛选,需要使用
one_of
函数
3. 筛选行:filter()

4. 按某1列或某几列对整个表格进行排序: arrange()

5.汇总/计算:summarise()
*结合group_by
使用实用性强

三、dplyr两个实用技能
1. 管道操作 %>%
(cmd/ctr + shift + M)

%>%管道操作符,运用起来特别方便,能够连接前后两个步骤,实现嵌套使用简化代码的同时还能避免存储多余的中间值而节省内存空间。它的作用是把符号左侧返回的结果,作为符号右侧调用函数的第1个参数。
- 加载任意一个tidyverse包即可用管道符号
Tidyverse包是一个数据科学套件,让数据工作流变得更加简单和高效。包括:
- dplyr包:用于数据操作和处理,常用的函数filter(), select(), mutate(), arrange(), group_by(), summarise()等,非常高效地完成数据选择、排序、聚合。
- ggplot2包:用于数据可视化。
- tidyr包:用于数据的整洁。pivot_longer()函数把数据转换为长数据;pivot_wider()函数把数据转换为宽数据。
- readr包:用于数据的读取。
- forcats包:用于因子类型的管理。
- purrr包:用于函数式编程
2. count
统计某列的unique值

四、dplyr处理关系数据
(以下示例数据设置)

1. 內连inner_join
:取交集

2. 左连left_join

3. 全连full_join

4. 半连接:返回能够与y表匹配的x表所有记录semi_join

5. 反连接:返回无法与y表匹配的x表的所记录anti_join

6. 简单合并


以上
From 生信星球学习小组第130期
参考:
网友评论