Combiner des données avec data.table en R
Scott Ritchie
Postdoctoral Researcher in Systems Genomics
Définir des clés évite d'utiliser l'argument on lors d'une jointure
data.table Trie en mémoire le data.table par la ou les colonnes de clé
Plusieurs colonnes peuvent être définies et utilisées comme clés
Les colonnes de clé sont passées en arguments
setkey(DT, ...)
setkey(DT, key1, key2, key3)setkey(DT, "key1", "key2", "key3")
# Pour définir toutes les colonnes de DT comme clés
setkey(DT)
Définissez les clés des deux data.table avant une jointure
setkey(dt1, dt1_key)
setkey(dt2, dt2_key)
Effectuez une jointure interne, droite et gauche :
# Jointure interne entre dt1 et dt2 dt1[dt2, nomatch = 0]# Jointure droite entre dt1 et dt2 dt1[dt2]# Jointure gauche entre dt1 et dt2 dt2[dt1]
Les colonnes de clé sont fournies sous forme de vecteur de caractères
keys <- c("key1", "key2", "key3")
setkeyv(dt, keys)
haskey() vérifie si des clés sont définies
haskey(dt1)
TRUE
key() renvoie les colonnes de clé définies
key(dt1)
"dt1_key"
Quand aucune clé n'est définie
haskey(dt_no_key)
FALSE
key(dt_no_key)
NULL
tables()
NAME NROW NCOL MB COLS KEY
[1,] dt 3 4 1 key1,key2,key3,value key1,key2,key3
[2,] dt1 1,000 3 1 dt1_key_column,value,group dt1_key
[3,] dt2 1,000 2 1 dt2_key_column,time dt2_key
[4,] dt_no_key 5 2 1 id,color
Total: 4MB
Combiner des données avec data.table en R