Att sammanfoga data med data.table i R
Scott Ritchie
Postdoctoral Researcher in Systems Genomics
Givet två data.tables med samma kolumner:
fintersect(): vilka rader har dessa två data.tables gemensamt?funion(): vad är den unika mängden rader över dessa två data.tables?
fsetdiff(): vilka rader är unika för denna data.table?
Hämta rader som finns i båda data.tables
fintersect(dt1, dt2)

Dubbletter ignoreras som standard:
fintersect(dt1, dt2)

all = TRUE: behåll antalet kopior som finns i båda data.tables:
fintersect(dt1, dt2, all = TRUE)

Hämta rader som enbart finns i den första data.table
fsetdiff(dt1, dt2)

Dubbletter ignoreras som standard:
fsetdiff(dt1, dt2)

all = TRUE: returnera alla extra kopior:
fsetdiff(dt1, dt2, all = TRUE)

Hämta alla rader som finns i någon av data.tables:
funion(dt1, dt2)

Dubbletter ignoreras som standard:
funion(dt1, dt2)

all = TRUE: returnera alla rader:
funion(dt1, dt2, all = TRUE) # rbind()

Två data.tables:
funion() för att sammanfoga unika raderTre eller fler:
data.tables med rbind() eller rbindlist()duplicated() och unique()Att sammanfoga data med data.table i R