Tidy Data - Lettura Tarantino PDF

Title Tidy Data - Lettura Tarantino
Author Serena Malaspina
Course Media e reti sociali
Institution Università Cattolica del Sacro Cuore
Pages 11
File Size 251.4 KB
File Type PDF
Total Downloads 43
Total Views 126

Summary

Traduzione lettura Tidy data di Wickham ...


Description

TIDY DATA Introduzione Si dice spesso che l'80% dell'analisi dei dati sia impiegata nel processo di pulizia e preparazione dei dati (Dasu e Johnson 2003). La preparazione dei dati non è solo un primo passo, ma deve essere ripetuta molti nel corso dell'analisi man mano che emergono nuovi problemi o vengono raccolti nuovi dati. Nonostante il tempo necessario, ci sono state sorprendentemente poche ricerche su come pulire bene i dati. Parte della sfida è l'ampiezza delle attività che comprende: dal controllo anomalo, all'analisi della data, all'imputazione del valore mancante. Per far fronte al problema, questo documento si concentra su un piccolo ma importante aspetto della pulizia dei dati che chiamo riordino dei dati: strutturare set di dati per facilitare l'analisi. I principi dei dati ordinati forniscono un modo standard per organizzare i valori dei dati all'interno di un set di dati. Uno standard semplifica la pulizia iniziale dei dati perché non è necessario ricominciare da capo e reinventare la ruota ogni volta. Lo standard di dati ordinato è stato progettato per facilitare l'esplorazione iniziale e l'analisi dei dati e per semplificare lo sviluppo di strumenti di analisi dei dati che funzionano bene insieme. Gli strumenti attuali richiedono spesso una traduzione. Devi passare del tempo mungendo l'output da uno strumento in modo da poterlo inserire in un altro. Set di dati ordinati e strumenti ordinati lavorano fianco a fianco per semplificare l'analisi dei dati, consentendoti di concentrarti sull'interessante problema del dominio, non sulla logistica poco interessante dei dati. I principi dei dati ordinati sono strettamente legati a quelli dei database relazionali e dell'algebra relazionale di Codd (Codd 1990), ma sono inquadrati in un linguaggio familiare agli statistici. Anche gli informatici hanno contribuito molto allo studio della pulizia dei dati. Ad esempio, Lakshmanan, Sadri e Subramanian (1996) definiscono un'estensione a SQL per consentirgli di operare su set di dati disordinati, Raman e Hellerstein (2001) forniscono un framework per la pulizia di set di dati e Kandel, Paepcke, Hellerstein e Heer (2011 ) sviluppare uno strumento interattivo con un'interfaccia utente intuitiva che crea automaticamente codice per la pulizia dei dati. Questi strumenti sono utili ma sono presentati in una lingua estranea alla maggior parte degli statistici, non forniscono molti consigli su come strutturare i set di dati e mancano di connessioni con gli strumenti di analisi dei dati. Lo sviluppo di dati ordinati è stato guidato dalla mia esperienza di lavoro con set di dati del mondo reale. Con pochi, se del caso, vincoli alla loro organizzazione, tali set di dati sono spesso costruiti in modi bizzarri. Ho trascorso innumerevoli ore a lottare per organizzare tali set di dati in modo da rendere possibile l'analisi dei dati, e tanto meno facile. Ho anche lottato per impartire queste abilità ai miei studenti in modo che potessero affrontare da soli i set di dati del mondo reale. Nel corso di queste lotte ho sviluppato i pacchetti reshape e reshape2 (Wickham 2007). Mentre potevo usare intuitivamente gli strumenti e insegnarli attraverso esempi, mi mancava il framework per rendere esplicita la mia intuizione. Questo documento fornisce tale quadro. Fornisce una "filosofia dei dati" completa: una che è alla base del mio lavoro nei pacchetti plyr (Wickham 2011) e ggplot2 (Wickham 2009). Il documento procede come segue. La sezione 2 inizia definendo le tre caratteristiche che rendono ordinato un set di dati. Poiché la maggior parte dei set di dati del mondo reale non sono ordinati, la Sezione 3 descrive le operazioni necessarie per rendere ordinati i set di dati disordinati e illustra le tecniche con una serie di esempi reali. La sezione 4 definisce strumenti ordinati, strumenti che immettono e producono set di dati ordinati e discute su come i dati ordinati e gli strumenti ordinati possano semplificare l'analisi dei dati. Questi principi sono illustrati con un piccolo caso di studio nella sezione 5. La sezione 6 si conclude con una discussione su ciò che manca a questo quadro e su quali altri approcci potrebbero essere proficui da perseguire. 2. Definizione di dat Come le famiglie, i set di dati ordinati sono tutti uguali ma ogni set di dati disordinato è disordinato a modo suo. I set di dati ordinati forniscono un modo standardizzato per collegare la struttura di un set di dati (il suo layout fisico) con la sua semantica (il suo significato). In questa sezione, fornirò un vocabolario standard per

descrivere la struttura e la semantica di un set di dati, quindi userò quelle definizioni per definire i dati in ordine. 2.1 Struttura dei dat La maggior parte dei set di dati statistici sono tabelle rettangolari costituite da righe e colonne. Le colonne sono quasi sempre etichettate e le righe sono talvolta etichettate. La tabella 1 fornisce alcuni dati su un esperimento immaginario in un formato comunemente visto in natura. La tabella ha due colonne e tre righe e entrambe le righe e le colonne sono etichettate. Esistono molti modi per strutturare gli stessi dati sottostanti. La tabella 2 mostra gli stessi dati della tabella 1, ma le righe e le colonne sono state trasposte. I dati sono gli stessi, ma il layout è diverso. Il nostro vocabolario di righe e colonne non è semplicemente abbastanza ricco per descrivere perché le due tabelle rappresentano gli stessi dati. Oltre all'apparenza, abbiamo bisogno di un modo per descrivere la semantica sottostante, o significato, dei valori visualizzati nella tabella. 2.2 Semantca dei dat Un set di dati è una raccolta di valori, generalmente numeri (se quantitativi) o stringhe (se qualitativi). I valori sono organizzati in due modi. Ogni valore appartiene a una variabile e a un'osservazione. Una variabile contiene tutti i valori che misurano lo stesso attributo sottostante (come altezza, temperatura, durata) tra le unità. Un'osservazione contiene tutti i valori misurati sulla stessa unità (come una persona, un giorno o una razza) attraverso gli attributi. La tabella 3 riorganizza la tabella 1 per rendere più chiari i valori, le variabili e le osservazioni. Il set di dati contiene 18 valori che rappresentano tre variabili e sei osservazioni. Le variabili sono: 1. persona, con tre possibili valori (John, Mary e Jane). 2. trattamento, con due possibili valori (a e b). 3. risultato, con cinque o sei valori a seconda di come pensi al valore mancante (-, 16, 3, 2, 11, 1). Il disegno sperimentale ci dice di più sulla struttura delle osservazioni. In questo esperimento, è stata misurata ogni combinazione di persona e trattamento, un disegno completamente incrociato. Il disegno sperimentale determina anche se i valori mancanti possono essere sicuri caduto. In questo esperimento, il valore mancante rappresenta un'osservazione che avrebbe dovuto essere fatta, ma non lo era, quindi è importante tenerlo. I valori strutturali mancanti, che rappresentano misurazioni che non possono essere effettuate (ad es. Il conteggio dei maschi in gravidanza) possono essere rimossi in modo sicuro. Per un determinato set di dati, di solito è facile definire cosa sono le osservazioni e quali sono le variabili, ma è sorprendentemente difficile definire con precisione variabili e osservazioni in generale. Ad esempio, se le colonne nella Tabella 1 fossero altezza e peso saremmo felici di chiamarle variabili. Se le colonne fossero altezza e larghezza, sarebbe meno chiaro, poiché potremmo pensare all'altezza e alla larghezza come valori di una variabile di dimensione. Se le colonne fossero il telefono di casa e il telefono di lavoro, potremmo trattarle come due variabili, ma in un ambiente di rilevamento delle frodi potremmo volere il numero di telefono e il tipo di numero di variabili perché l'uso di un numero di telefono per più persone potrebbe suggerire una frode. Una regola empirica generale è che è più semplice descrivere le relazioni funzionali tra le variabili (ad esempio, z è una combinazione lineare di xey, la densità è il rapporto tra peso e volume) che tra le righe, ed è più facile fare confronti tra gruppi di osservazioni (ad esempio, media del gruppo a vs. media del gruppo b) rispetto a gruppi di colonne. In una data analisi, potrebbero esserci più livelli di osservazione. Ad esempio, in una sperimentazione di nuovi farmaci per le allergie potremmo avere tre tipi di osservazioni: dati demografici raccolti da ogni persona (età, sesso, razza), dati medici raccolti da ogni

persona ogni giorno (numero di starnuti, arrossamento degli occhi), e dati meterologici raccolti ogni giorno (temperatura, conteggio dei pollini). 2.3 Tidy Data I dati ordinati sono un modo standard di mappare il significato di un set di dati sulla sua struttura. Un set di dati è disordinato o ordinato in base al modo in cui righe, colonne e tabelle vengono abbinate a osservazioni, variabili e tipi. Dati ordinati: 1. Ogni variabile forma una colonna. 2. Ogni osservazione forma una riga. 3. Ogni tipo di unità osservativa forma una tabella. Questa è la terza forma normale di Codd (Codd 1990), ma con i vincoli incorniciati in un linguaggio statistico e l'attenzione si concentra su un singolo set di dati anziché sui molti set di dati collegati comuni nei database relazionali. I dati disordinati sono qualsiasi altra disposizione dei dati. La tabella 3 è la versione ordinata della tabella 1. Ogni riga rappresenta un'osservazione, il risultato di un trattamento su una persona e ogni colonna è una variabile. I dati ordinati rendono facile per un analista o un computer estrarre le variabili necessarie perché forniscono un modo standard di strutturare un set di dati. Confronta la tabella 3 con la tabella 1: nella tabella 1 devi utilizzare strategie diverse per estrarre variabili diverse. Questo rallenta l'analisi e invita errori. Se consideri quante operazioni di analisi dei dati coinvolgono tutti i valori in una variabile (ogni funzione di aggregazione), puoi vedere quanto sia importante estrarre questi valori in modo semplice e standard. I dati ordinati sono particolarmente adatti per linguaggi di programmazione vettoriali come R, poiché il layout garantisce che i valori di diverse variabili della stessa osservazione siano sempre associati. Mentre l'ordine delle variabili e delle osservazioni non ha un'analisi ect,, un buon ordinamento semplifica la scansione dei valori grezzi. Un modo di organizzare le variabili è attraverso il loro ruolo nell'analisi: i valori sono fissati dal design della raccolta di dati o sono misurati nel corso dell'esperimento? Le variabili fisse descrivono il disegno sperimentale e sono note in anticipo. Gli informatici spesso chiamano dimensioni di variabili fisse e gli statistici di solito le indicano con pedici su variabili casuali. Le variabili misurate sono ciò che effettivamente misuriamo nello studio. Le variabili fisse dovrebbero essere prima seguite da variabili misurate, ciascuna ordinata in modo che le variabili correlate siano contigue. Le righe possono quindi essere ordinate dalla prima variabile, rompendo i legami con la seconda e le successive (fissate) variabili. Questa è la convenzione adottata da tutti i display tabulari in questo documento. 3. Riordinare set di dat disordinat I set di dati reali possono, e spesso lo fanno, violare i tre precetti dei dati ordinati in quasi ogni modo immaginabile. Mentre di tanto in tanto ottieni un set di dati che puoi iniziare ad analizzare immediatamente, questa è l'eccezione, non la regola. Questa sezione descrive i cinque problemi più comuni con i set di dati disordinati, insieme ai loro rimedi: • Le intestazioni delle colonne sono valori, non nomi di variabili. • Più variabili sono memorizzate in una colonna. • Le variabili sono memorizzate sia nelle righe che nelle colonne. • Più tipi di unità osservative sono memorizzati nella stessa tabella. • Una singola unità osservativa è memorizzata in più tabelle. Sorprendentemente, la maggior parte dei set di dati disordinati, compresi i tipi di disordine non esplicitamente descritti sopra, possono essere riordinati con un piccolo set di strumenti: fusione, divisione delle stringhe e fusione. Le seguenti sezioni illustrano ogni problema con un set di dati reale che ho riscontrato e mostrano come riordinarli. I set di dati completi e il codice R utilizzati per riordinarli sono

disponibili online all'indirizzo https://github.com/hadley/tidy-data e nei materiali supplementari online per questo documento. 3.1. Le intestazioni di colonna sono valori, non nomi di variabili Un tipo comune di set di dati disordinato sono i dati tabulari progettati per la presentazione, in cui le variabili formano sia le righe che le colonne e le intestazioni delle colonne sono valori, non nomi di variabili. Mentre definirei disordinato questo accordo, in alcuni casi può essere estremamente utile. Fornisce una memoria efficiente per progetti completamente incrociati e può portare a un calcolo estremamente efficiente se le operazioni desiderate possono essere espresse come operazioni a matrice. Questo problema è discusso in dettaglio nella Sezione 6. La Tabella 4 mostra un sottoinsieme di un set di dati tipico di questo modulo. Questo set di dati esplora la relazione tra reddito e religione negli Stati Uniti. Viene da un rapporto1 prodotto dal Pew Research Center, un think tank americano che raccoglie dati su atteggiamenti su argomenti che vanno dalla religione a Internet e produce molti rapporti che contengono set di dati in questo formato. Questo set di dati ha tre variabili, religione, reddito e frequenza. Per riordinarlo, dobbiamo scioglierlo o impilarlo. In altre parole, dobbiamo trasformare le colonne in righe. Mentre questo viene spesso descritto come rendere lunghi o alti set di dati ampi, eviterò quei termini perché sono imprecisi. La fusione è parametrizzata da un elenco di colonne che sono già variabili o abbreviate in breve. Le altre colonne vengono convertite in due variabili: una nuova variabile chiamata colonna che contiene intestazioni di colonna ripetute e una nuova variabile chiamata valore che contiene i valori di dati concatenati dalle colonne precedentemente separate. Questo è illustrato nella Tabella 5 con un set di dati giocattolo. Il risultato della fusione è un set di dati fuso. Il set di dati Pew ha una resa in colvar, religione e fusione Tabella 6. Per rispecchiare meglio i loro ruoli in questo set di dati, la colonna variabile è stata rinominata in reddito e la colonna valore in freq. Questo modulo è ordinato perché ogni colonna rappresenta una variabile e ogni riga rappresenta un'osservazione, in questo caso un'unità demografica corrispondente a una combinazione di religione e reddito. Un altro uso comune di questo formato di dati è la registrazione di osservazioni spaziate regolarmente nel tempo. Ad esempio, il set di dati di Billboard mostrato nella Tabella 7 registra la data in cui una canzone è entrata per la prima volta nella Top 100 di Billboard. Dispone di variabili per artista, traccia, data di inserimento, classifica e settimana. Il grado in ogni settimana dopo essere entrato tra i primi 100 viene registrato in 75 colonne, da wk1 a wk75. Se una canzone è nella Top 100 per meno di 75 settimane, le colonne rimanenti vengono riempite con valori mancanti. Questa forma di archiviazione non è ordinata, ma è utile per l'immissione dei dati. Riduce la duplicazione da allora altrimenti ogni brano di ogni settimana avrebbe bisogno di una propria riga e i metadati di brani come titolo e artista dovrebbero essere ripetuti. Questo problema sarà discusso in modo più approfondito nella Sezione 3.4. Questo set di dati include anno, artista, traccia, ora e data. Rendimenti di fusione Tabella 8. Ho anche fatto un po 'di pulizia e di riordino: la colonna è stata convertita in settimana estraendo il numero e la data è stata calcolata da date.entered e week. 3.2 Più variabili memorizzate in una colonna Dopo la fusione, i nomi delle variabili di colonna diventano spesso una combinazione di più nomi di variabili sottostanti. Ciò è illustrato dal set di dati della tubercolosi (TB), un esempio del quale è mostrato nella Tabella 9. Questo set di dati proviene dall'Organizzazione mondiale della sanità e registra i conteggi dei casi confermati di tubercolosi per paese, anno e gruppo demografico. I gruppi demografici sono suddivisi per sesso (m, f) ed età (0–14, 15–25, 25–34, 35–44, 45-54, 55-64). Le intestazioni di colonna in questo formato sono spesso separate da un carattere (., -, _, :). Mentre la stringa può essere suddivisa in pezzi utilizzando quel carattere come divisore, in altri casi, come per questo set di dati, è necessaria un'elaborazione più accurata della stringa. Ad esempio, i nomi delle variabili

possono essere associati a una tabella di ricerca che converte un singolo valore composto in più valori componente. La Tabella 10 (a) mostra i risultati della fusione del set di dati TB e la Tabella 10 (b) mostra i risultati della divisione della colonna a colonna singola in due variabili reali: età e sesso. La memorizzazione dei valori in questo modulo risolve un altro problema nei dati originali. Vogliamo confrontare i tassi, non i conteggi. Ma per calcolare i tassi, dobbiamo conoscere la popolazione. Nel formato originale, non esiste un modo semplice per aggiungere una variabile di popolazione. Deve essere memorizzato in una tabella separata, il che rende difficile abbinare correttamente le popolazioni ai conteggi. In forma ordinata, aggiungere variabili per popolazione e tasso è facile. Sono solo colonne aggiuntive. 3.3. Le variabili sono memorizzate sia nelle righe che nelle colonne La forma più complicata di dati disordinati si verifica quando le variabili sono archiviate sia nelle righe che nelle colonne. La Tabella 11 mostra i dati meteorologici giornalieri della Rete mondiale di climatologia storica per una stazione meteorologica (MX17004) in Messico per cinque mesi nel 2010. Ha variabili in singole colonne (id, anno, mese), distribuite su colonne (giorno, d1 – d31 ) e attraverso le file (tmin, tmax) (temperatura minima e massima). I mesi con meno di 31 giorni hanno valori strutturali mancanti per l'ultimo giorno / i del mese. La colonna dell'elemento non è una variabile; memorizza i nomi delle variabili. Per riordinare questo set di dati, per prima cosa lo fondiamo con id di colvars, anno, mese e la colonna che contiene nomi di variabili, elemento. Questo produce la Tabella 12 (a). Per la presentazione, abbiamo eliminato i valori mancanti, rendendoli impliciti piuttosto che espliciti. Questo è consentito perché sappiamo quanti giorni ci sono in ogni mese e possiamo ricostruire facilmente i valori mancanti espliciti. Questo set di dati è per lo più ordinato, ma abbiamo due variabili memorizzate in righe: tmin e tmax, il tipo di osservazione. In questo esempio non sono mostrate le altre variabili meteorologiche prcp (precipitazioni) e neve (nevicate). Per risolvere questo problema, è necessario eseguire l'operazione di cast o decompressione. Ciò esegue l'inverso della fusione ruotando la variabile dell'elemento indietro nelle colonne (Tabella 12 (b)). Questo modulo è ordinato. C'è una variabile in ogni colonna e ogni riga rappresenta le osservazioni di un giorno. L'operazione sul cast è descritta in modo approfondito in Wickham (2007). 3.4. Tipi multpli in una tabella I set di dati spesso implicano valori raccolti a più livelli, su diversi tipi di unità osservative. Durante il riordino, ogni tipo di unità osservativa deve essere memorizzato nella propria tabella. Ciò è strettamente correlato all'idea della normalizzazione del database, in cui ogni fatto è espresso in un solo posto. In caso contrario, è possibile che si verifichino incoerenze. Il set di dati Billboard descritto nella Tabella 8 contiene in realtà osservazioni su due tipi di unità osservative: la canzone e il suo grado in ogni settimana. Ciò si manifesta attraverso la duplicazione dei fatti sulla canzone: artista e tempo si ripetono per ogni canzone in ogni settimana. Il set di dati del tabellone per le affissioni deve essere suddiviso in due set di dati: un set di dati del brano che memorizza artista, nome e ora del brano e un set di dati di classifica che indica il grado del brano ogni settimana. La Tabella 13 mostra questi due set di dati. Potresti anche immaginare un set di dati della se...


Similar Free PDFs