Jak dołączyć (scalić) ramki danych (wewnętrzne, zewnętrzne, lewe, prawe)?

Biorąc pod uwagę dwie ramki danych:

df1 = data.frame(CustomerId = c(1:6), Product = c(rep("Toaster", 3), rep("Radio", 3)))
df2 = data.frame(CustomerId = c(2, 4, 6), State = c(rep("Alabama", 2), rep("Ohio", 1)))

df1
#  CustomerId Product
#           1 Toaster
#           2 Toaster
#           3 Toaster
#           4   Radio
#           5   Radio
#           6   Radio

df2
#  CustomerId   State
#           2 Alabama
#           4 Alabama
#           6    Ohio

Jak mogę zrobić styl bazy danych, tj.styl sql, dołącza? To znaczy, jak mogę uzyskać:

Napołączenie wewnętrzne zdf1 idf2:
Zwróć tylko wiersze, w których lewa tabela ma pasujące klucze w prawej tabeli.Nazłączenie zewnętrzne zdf1 idf2:
Zwraca wszystkie wiersze z obu tabel, dołącz rekordy z lewej strony, które mają pasujące klucze w prawej tabeli.A left outer join (lub po prostu left join) zdf1 idf2
Zwróć wszystkie wiersze z lewej tabeli i wszystkie wiersze z pasującymi kluczami z prawej tabeli.A prawe sprzężenie zewnętrzne zdf1 idf2
Zwróć wszystkie wiersze z prawej tabeli i wszystkie wiersze z pasującymi kluczami z lewej tabeli.

Dodatkowy kredyt:

Jak mogę wykonać instrukcję wyboru w stylu SQL?

questionAnswers(13)

yourAnswerToTheQuestion