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

来源:互联网 发布:数据缺失的解决方案 编辑:程序博客网 时间:2024/05/29 16:57
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"))AB<-data.table(X2=c("c","d","e","f"),Y2=c(4.4,5.5,6.6,7.7))B#LEFT JOINleft_join(A,B,c("X1" = "X2"))merge(A,B, by.x = "X1", by.y = "X2",all.x=TRUE)  X1 Y1   Z1  Y21  a  1 num1  NA2  b  2 num2  NA3  c  3 num3 4.44  d  4 num4 5.55  e  5 num5 6.6#RIGHT JOINright_join(A,B,c("X1" = "X2"))merge(A,B, by.x = "X1", by.y = "X2",all.y=TRUE)  X1 Y1   Z1  Y21  c  3 num3 4.42  d  4 num4 5.53  e  5 num5 6.64  f NA <NA> 7.7#INNER JOINinner_join(A,B,c("X1" = "X2"))merge(A,B, by.x = "X1", by.y = "X2")  X1 Y1   Z1  Y21  c  3 num3 4.42  d  4 num4 5.53  e  5 num5 6.6#FULL JOINfull_join(A,B,c("X1" = "X2"))merge(A,B, by.x = "X1", by.y = "X2",all=TRUE)   X1 Y1   Z1  Y21:  a  1 num1  NA2:  b  2 num2  NA3:  c  3 num3 4.44:  d  4 num4 5.55:  e  5 num5 6.66:  f NA   NA 7.7