R语言学习-JOIN的各种实现

本文通过实例展示了R语言中使用data.table和dplyr包进行LEFT JOIN、RIGHT JOIN、INNER JOIN和FULL JOIN的操作,详细解释了不同JOIN类型的结果,并提供了对应的merge函数调用示例。
摘要由CSDN通过智能技术生成
library(data.table)
library(dplyr)
A<-data.table(X1=c("a","b","c","d","e"),Y1=c(1,2,3,4,5),Z1=c("num1","num2","num3","num4","num5"))
A
B<-data.table(X2=c("c","d","e","f"),Y2=c(4.4,5.5,6.6,7.7))
B
#LEFT JOIN
left_join(A,B,c("X1" = "X2"))
merge(A,B, by.x = "X1", by.y = "X2",all.x=TRUE)
  X1 Y1   Z1  Y2
1  a  1 num1  NA
2  b  2 num2  NA
3  c  3 num3 4.4
4  d  4 num4 5.5
5  e  5 num5 6.6
#RIGHT JOIN
right_join(A,B,c("X1" = "X2"))
merge(A,B, by.x = "X1", by.y = "X2",all.y=TRUE)  X1 Y1   Z1  Y2
1  c  3 num3 4.4
2  d  4 num4 5.5
3  e  5 num5 6.6
4  f NA <NA> 7.7
#INNER JOIN
inner_join(A,B,c("X1" = "X2"))
merge(A,B, by.x = "X1", by.y = "X2")
  X1 Y1   Z1  Y2
1  c  3 num3 4.4
2  d 
  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值