Combinando dados com data.table em R
Scott Ritchie
Postdoctoral Researcher in Systems Genomics
Dados dois data.tables com as mesmas colunas:
fintersect(): quais linhas esses dois data.tables têm em comum?funion(): qual é o conjunto único de linhas entre esses dois data.tables?
fsetdiff(): quais linhas são exclusivas deste data.table?
Extraia as linhas presentes em ambos os data.tables
fintersect(dt1, dt2)

Linhas duplicadas são ignoradas por padrão:
fintersect(dt1, dt2)

all = TRUE: mantém o número de cópias presente em ambos os data.tables:
fintersect(dt1, dt2, all = TRUE)

Extraia as linhas encontradas apenas no primeiro data.table
fsetdiff(dt1, dt2)

Linhas duplicadas são ignoradas por padrão:
fsetdiff(dt1, dt2)

all = TRUE: retorna todas as cópias extras:
fsetdiff(dt1, dt2, all = TRUE)

Extraia todas as linhas encontradas em qualquer data.table:
funion(dt1, dt2)

Linhas duplicadas são ignoradas por padrão:
funion(dt1, dt2)

all = TRUE: retorna todas as linhas:
funion(dt1, dt2, all = TRUE) # rbind()

Dois data.tables:
funion() para concatenar linhas únicasTrês ou mais:
data.tables com rbind() ou rbindlist()duplicated() e unique()Combinando dados com data.table em R