První pohled na iotools: Import dat

Škálovatelné zpracování dat v R

Simon Urbanek

Member of R-Core, Lead Inventive Scientist, AT&T Labs Research

Zpracování po blocích

  1. Načtení části dat
  2. Převod na nativní objekty
  3. Výpočet a uložení výsledků

Opakovat kroky 1 až 3, dokud nejsou zpracována všechna data

Škálovatelné zpracování dat v R

Import dat

  • Načítání dat často trvá déle než jejich zpracování a probíhá ve 2 krocích
    • Čtení dat z disku je relativně pomalá operace
    • Převod surových dat na nativní objekty R
Škálovatelné zpracování dat v R

Import dat pomocí iotools

V balíčku iotools jsou fyzické načítání dat a parsování vstupu do objektů R odděleny pro větší flexibilitu a výkon.

Škálovatelné zpracování dat v R

iotools: Import dat

  • readAsRaw() načte celá data do surového vektoru
  • read.chunk() načítá data po blocích do surového vektoru
Škálovatelné zpracování dat v R

iotools: Parsování dat

  • mstrsplit() převádí surová data na matici
  • dstrsplit() převádí surová data na datový rámec
Škálovatelné zpracování dat v R

iotools: Načítání a parsování dat

read.delim.raw() = readAsRaw() + dstrsplit()

Škálovatelné zpracování dat v R

Zpracování po blocích

  • Není nutné importovat všechna data
  • Čtení po „blocích" řádků ze zdroje dat
  • Žádná mezilehlá struktura
Škálovatelné zpracování dat v R

Souborová připojení

# Open a file connection
fc <- file("data-file.csv", "rb")
# Read the first line if the data has a header
readLines(fc, n = 1)
....
# Code to import and parse the data
....
# Close the file connection
close(fc)
Škálovatelné zpracování dat v R

Pojďme si procvičit!

Škálovatelné zpracování dat v R

Preparing Video For Download...