Jointure de données avec data.table en R
Scott Ritchie
Postdoctoral Researcher in Systems Genomics
Étant donné deux data.tables ayant les mêmes colonnes :
fintersect() : quelles lignes ces deux data.tables ont-elles en commun ?funion() : quel est l'ensemble unique de lignes à travers ces deux data.tables ?
fsetdiff() : quelles lignes sont propres à ce data.table ?
Extraire les lignes présentes dans les deux data.tables
fintersect(dt1, dt2)

Les doublons sont ignorés par défaut :
fintersect(dt1, dt2)

all = TRUE : conserver le nombre d'occurrences présentes dans les deux data.tables :
fintersect(dt1, dt2, all = TRUE)

Extraire les lignes trouvées uniquement dans le premier data.table
fsetdiff(dt1, dt2)

Les doublons sont ignorés par défaut :
fsetdiff(dt1, dt2)

all = TRUE : retourner toutes les copies en trop :
fsetdiff(dt1, dt2, all = TRUE)

Extraire toutes les lignes présentes dans l'un ou l'autre data.table :
funion(dt1, dt2)

Les doublons sont ignorés par défaut :
funion(dt1, dt2)

all = TRUE : retourner toutes les lignes :
funion(dt1, dt2, all = TRUE) # rbind()

Deux data.tables :
funion() pour concaténer les lignes uniquesTrois ou plus :
data.tables avec rbind() ou rbindlist()duplicated() et unique()Jointure de données avec data.table en R