Sintaxe do data.table

Combinando dados com data.table em R

Scott Ritchie

Postdoctoral Researcher in Systems Genomics

Recap da sintaxe do data.table

Forma geral da sintaxe de data.table

DT[i, j, by]
   |  |  |
   |  |  --> agrupar por quê?
   |  -----> o que fazer?
   --------> em quais linhas?
Combinando dados com data.table em R

Joins

Forma geral dos joins com sintaxe de data.table

DT[i, on]
   |   |
   |   ----> colunas-chave do join
   --------> juntar com qual data.table?
Combinando dados com data.table em R

Right joins

O join padrão é o right join

demographics[shipping, on = .(name)]

Combinando dados com data.table em R

O argumento on

Variáveis dentro de list() ou .() são buscadas nos nomes de colunas de ambos os data.tables

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

Vetores de caracteres também podem ser usados

join_key <- c("name")
shipping[demographics, on = join_key]
Combinando dados com data.table em R

Left joins

Lembre: um left join é igual a um right join com a ordem invertida:

shipping[demographics, on = .(name)]

Combinando dados com data.table em R

Inner joins

Defina nomatch = 0 para fazer um inner join:

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

Combinando dados com data.table em R

Full joins

Não é possível com a sintaxe de data.table; use a função merge():

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

Combinando dados com data.table em R

Anti-joins

Filtre um data.table para linhas sem correspondência em outro data.table

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

Combinando dados com data.table em R

Vamos praticar!

Combinando dados com data.table em R

Preparing Video For Download...