R语言中inner_join、left_join、right_join、full_join函数

 

001、测试数据

library(dplyr)
class1 <- tribble(
  ~'名次',~'姓名',
  '第一名','王某人',
  '第二名','张周人',
  '第三名','李某人'
)
class2 <- tribble(
  ~'名次',~'姓名',
  '第一名','胡某人',
  '第二名','刘周人',
  '第四名','于某人'
)
class1
class2

 

 

002、inner_join

class1
class2
inner_join(class1, class2, by='名次')   ## inner_join 相当于取交集

 

 

003、left_join

class1
class2
left_join(class1, class2, by='名次')     ## 保留左侧的条目

 

 

004、right_join

class1
class2
right_join(class1, class2, by='名次')   ## 保留右侧的条目

 

 

005、full_join

class1
class2
full_join(class1, class2, by='名次')

 

006、其他

> class2<-tribble(
+   ~'名次',~'姓名',
+   '第一名','胡某人',
+   '第二名','刘某人',
+   '第四名','于某人'
+ )
> sports<-tribble(
+   ~'项目',~'运动员',
+   '乒乓球','于某人',
+   '篮球','胡某人',
+   '足球','刘某人'
+ )
> left_join(class2,sports,by=c('姓名'='运动员'))
# A tibble: 3 × 3
  名次   姓名   项目  
  <chr>  <chr>  <chr> 
1 第一名 胡某人 篮球  
2 第二名 刘某人 足球  
3 第四名 于某人 乒乓球

 

posted @ 2022-07-27 22:09  小鲨鱼2018  阅读(5039)  评论(0编辑  收藏  举报