Join two tbls together.

These are generic functions that dispatch to individual tbl methods - see the method documentation for details of individual data sources. x and y should usually be from the same data source, but if copy is TRUE, y will automatically be copied to the same source as x - this may be an expensive operation.

inner_join(x, y, by = NULL, copy = FALSE, ...)

left_join(x, y, by = NULL, copy = FALSE, ...)

semi_join(x, y, by = NULL, copy = FALSE, ...)

anti_join(x, y, by = NULL, copy = FALSE, ...)

tbls to join
a character vector of variables to join by. If NULL, the default, join will do a natural join, using all variables with common names across the two tables. A message lists the variables so that you can check they're right.
If x and y are not from the same data source, and copy is TRUE, then y will be copied into the same src as x. This allows you to join tables across srcs, but it is a potentially expensive operation so you must opt into it.
other parameters passed onto methods
Join types

Currently dplyr supports four join types:

A semi join differs from an inner join (with just the by variables) because an inner join will return one row of x for each matching row of y, where a semi join will never duplicated rows in x.


Groups are ignored for the purpose of joining, but the result preserves the grouping of x.

  • anti_join
  • inner_join
  • join
  • left_join
  • semi_join
Documentation reproduced from package dplyr, version 0.1, License: MIT + file LICENSE

Community examples at Jan 28, 2019 dplyr v0.7.8

library(dplyr) #creating dataframe1 pd=data.frame("Name"=c("Senthil","Senthil","Sam","Sam"),"Month"=c("Jan","Feb","Jan","Feb"),"BS" = c(141.2,139.3,135.2,160.1),"BP" = c(90,78,80,81)) print(pd) #creating dataframe2 pd_new=data.frame("Name"=c("Senthil",“Ramesh", "Sam"),“Department"=c(“PSE",“Data Analytics",“PSE")) print(pd_new) #left join pd_left_join1 <- left_join(pd, pd_new, by="Name") print(pd_left_join1) #right join pd_right_join1 <- right_join(pd, pd_new, by ="Name") print(pd_right_join1) #inner join pd_inner_join1 <- inner_join(pd_new, pd, by ="Name") print(pd_inner_join1) at Nov 8, 2018 dplyr v0.1

Join d1 and d2 on a 2-column-based join. ``` library(dplyr) d1 <- data_frame( x = letters[1:3], y = LETTERS[1:3], a = rnorm(3) ) d2 <- data_frame( x2 = letters[3:1], y2 = LETTERS[3:1], b = rnorm(3) ) left_join(d1, d2, by = c("x" = "x2", "y" = "y2")) ```