Składnia data.table

Łączenie danych z data.table w R

Scott Ritchie

Postdoctoral Researcher in Systems Genomics

Przypomnienie składni data.table

Ogólna postać składni data.table

DT[i, j, by]
   |  |  |
   |  |  --> grupuj według czego?
   |  -----> co zrobić?
   --------> na których wierszach?
Łączenie danych z data.table w R

Złączenia

Ogólna postać złączeń w składni data.table

DT[i, on]
   |   |
   |   ----> kolumny klucza złączenia
   --------> z którą data.table złączyć?
Łączenie danych z data.table w R

Prawe złączenia

Domyślne złączenie to prawe złączenie

demographics[shipping, on = .(name)]

Łączenie danych z data.table w R

Argument on

Zmienne w list() lub .() są wyszukiwane wśród nazw kolumn obu data.table

shipping[demographics, on = list(name)]
shipping[demographics, on = .(name)]

Można również używać wektorów znakowych

join_key <- c("name")
shipping[demographics, on = join_key]
Łączenie danych z data.table w R

Lewe złączenia

Pamiętaj, że lewe złączenie to prawe złączenie z odwróconą kolejnością:

shipping[demographics, on = .(name)]

Łączenie danych z data.table w R

Złączenia wewnętrzne

Ustaw nomatch = 0, aby wykonać złączenie wewnętrzne:

shipping[demographics, on = .(name), nomatch = 0]

Łączenie danych z data.table w R

Pełne złączenia

Niemożliwe w składni data.table — należy użyć funkcji merge():

merge(demographics, shipping, by = "name", all = TRUE)

Łączenie danych z data.table w R

Złączenia wykluczające

Filtruje data.table do wierszy bez dopasowania w innej data.table

demographics[!shipping, on = .(name)]

Łączenie danych z data.table w R

Czas na ćwiczenia!

Łączenie danych z data.table w R

Preparing Video For Download...