美文网首页
dplyr包连接数据框

dplyr包连接数据框

作者: R语言数据分析指南 | 来源:发表于2021-02-01 22:23 被阅读0次

介绍如何使用dplyr软件包的join函数合并数据

创建示例数据

data1 <- data.frame(ID = 1:2,X1 = c("a1", "a2"))
data2 <- data.frame(ID = 2:3, X2 = c("b1", "b2"))

图1说明了两个数据框的结构以及如何使用dplyr包的不同联接函数对其进行合并

library(tidyverse)

inner_join(data1, data2, by = "ID")

inner_join函数合并两个数据集的变量,但仅保留具有共同ID(即ID 2)的行

左连接

left_join(data1, data2, by = "ID")

inner_join函数的区别在于,left_join保留了左数据表的所有行

右连接

right_join(data1, data2, by = "ID") 

right_join函数保留右侧的所有数据行,如果比较左连接与右连接,则可以看到两个函数都保留相反数据的行

完全连接

full_join(data1, data2, by = "ID")

full_join函数保留两个输入数据集的所有行,并在其中一个数据帧中缺少ID时插入NA

半连接

semi_join(data1, data2, by = "ID")

semi_join函数仅保留两个数据集共有的行,而仅保留左侧数据集的列

反连接

anti_join(data1, data2, by = "ID") 

anti_join函数仅保留右侧数据中不存在的行,并且仅保留左侧数据中的列

相关文章

网友评论

      本文标题:dplyr包连接数据框

      本文链接:https://www.haomeiwen.com/subject/usgstltx.html