Primo sguardo a iotools: importare dati

Elaborazione scalabile dei dati in R

Simon Urbanek

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

Elaborazione per blocchi

  1. Carica porzioni di dati
  2. Convertile in oggetti nativi
  3. Esegui i calcoli e salva i risultati

Ripeti da 1 a 3 finché tutti i dati non sono elaborati

Elaborazione scalabile dei dati in R

Importare dati

  • Spesso caricare i dati richiede più tempo che elaborarli, e avviene in 2 passaggi
    • Recuperare i dati dal disco è relativamente lento
    • Convertire i dati grezzi in oggetti R nativi
Elaborazione scalabile dei dati in R

Importare dati con iotools

Nel pacchetto iotools, il caricamento fisico dei dati e il parsing dell'input in oggetti R sono separati per maggiore flessibilità e prestazioni.

Elaborazione scalabile dei dati in R

iotools: importare dati

  • readAsRaw() legge tutti i dati in un vettore raw
  • read.chunk() legge i dati a blocchi in un vettore raw
Elaborazione scalabile dei dati in R

iotools: fare parsing dei dati

  • mstrsplit() converte dati grezzi in una matrice
  • dstrsplit() converte dati grezzi in un data frame
Elaborazione scalabile dei dati in R

iotools: caricamento e parsing dei dati

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

Elaborazione scalabile dei dati in R

Elaborazione per blocchi

  • Non è necessario importare tutti i dati
  • Leggi un "chunk" di righe alla volta dalla sorgente dati
  • Nessuna struttura intermedia
Elaborazione scalabile dei dati in R

Connessioni a file

# 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)
Elaborazione scalabile dei dati in R

Esercitiamoci!

Elaborazione scalabile dei dati in R

Preparing Video For Download...