Syntaxe de data.table

Combiner des données avec data.table en R

Scott Ritchie

Postdoctoral Researcher in Systems Genomics

Récap de la syntaxe data.table

Forme générale de la syntaxe data.table

DT[i, j, by]
   |  |  |
   |  |  --> regrouper par quoi ?
   |  -----> que faire ?
   --------> sur quelles lignes ?
Combiner des données avec data.table en R

Jointures

Forme générale des jointures en syntaxe data.table

DT[i, on]
   |   |
   |   ----> colonnes clés de jointure
   --------> avec quel data.table joindre ?
Combiner des données avec data.table en R

Jointures à droite

La jointure par défaut est une jointure à droite

demographics[shipping, on = .(name)]

Combiner des données avec data.table en R

L'argument on

Les variables dans list() ou .() sont recherchées parmi les noms de colonnes des deux data.table

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

Des vecteurs de caractères peuvent aussi être utilisés

join_key <- c("name")
shipping[demographics, on = join_key]
Combiner des données avec data.table en R

Jointures à gauche

Rappel : une jointure à gauche équivaut à une jointure à droite en inversant l'ordre :

shipping[demographics, on = .(name)]

Combiner des données avec data.table en R

Jointures internes

Définissez nomatch = 0 pour effectuer une jointure interne :

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

Combiner des données avec data.table en R

Jointures complètes

Impossible avec la syntaxe data.table ; utilisez la fonction merge() :

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

Combiner des données avec data.table en R

Anti-jointures

Filtrer un data.table vers les lignes sans correspondance dans un autre data.table

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

Combiner des données avec data.table en R

Passons à la pratique !

Combiner des données avec data.table en R

Preparing Video For Download...