Množinové operace

Joining Data with data.table in R

Scott Ritchie

Postdoctoral Researcher in Systems Genomics

Funkce množinových operací

Pro dva data.table se stejnými sloupci:

  • fintersect(): které řádky mají oba data.table společné?
  • funion(): jaká je jedinečná množina řádků v obou data.table?

  • fsetdiff(): které řádky jsou jedinečné pro daný data.table?

Joining Data with data.table in R

Množinové operace: `fintersect()`

Extrahuje řádky přítomné v obou data.table

fintersect(dt1, dt2)

Joining Data with data.table in R

`fintersect()` a duplicitní řádky

Duplicitní řádky jsou ve výchozím nastavení ignorovány:

fintersect(dt1, dt2)

Joining Data with data.table in R

`fintersect()` a duplicitní řádky

all = TRUE: zachová počet kopií přítomných v obou data.table:

fintersect(dt1, dt2, all = TRUE)

Joining Data with data.table in R

Množinové operace: `fsetdiff()`

Extrahuje řádky přítomné výhradně v prvním data.table

fsetdiff(dt1, dt2)

Joining Data with data.table in R

`fsetdiff()` a duplicity

Duplicitní řádky jsou ve výchozím nastavení ignorovány:

fsetdiff(dt1, dt2)

Joining Data with data.table in R

`fsetdiff()` a duplicity

all = TRUE: vrátí všechny nadbytečné kopie:

fsetdiff(dt1, dt2, all = TRUE)

Joining Data with data.table in R

Množinové operace: `funion()`

Extrahuje všechny řádky přítomné v libovolném data.table:

funion(dt1, dt2)

Joining Data with data.table in R

`funion()` a duplicity

Duplicitní řádky jsou ve výchozím nastavení ignorovány:

funion(dt1, dt2)

Joining Data with data.table in R

`funion()` a duplicity

all = TRUE: vrátí všechny řádky:

funion(dt1, dt2, all = TRUE) # rbind()

Joining Data with data.table in R

Odstraňování duplicit při kombinování více `data.table`

Dva data.table:

  1. Použijte funion() pro spojení jedinečných řádků

Tři a více:

  1. Spojte všechny data.table pomocí rbind() nebo rbindlist()
  2. Identifikujte a odstraňte duplicity pomocí duplicated() a unique()
Joining Data with data.table in R

Pojďme procvičovat!

Joining Data with data.table in R

Preparing Video For Download...