Per chiunque esegua analisi dei dati, è normale dedicare una grande quantità di tempo alla pulizia dei dati. I dati reali sono dati sporchi. Anche se stai utilizzando strumenti di raccolta automatica, errori, anomalie e incoerenze si faranno comunque strada nei tuoi dati.
Nei prossimi post del blog, vorrei mostrarvi alcune semplici tecniche per migliorare l'integrità dei dati. Parlerò di cosa cercare e di come farlo JMP . In molti casi, JMP dispone di tutte le funzionalità necessarie per eseguire l'attività. In alcuni casi, ho creato script per aiutare con la pulizia. Farò questi script disponibili nel Community utente JMP .
Per inserire la pulizia dei dati nel contesto, prendere in considerazione tre punti generali in cui potrebbero verificarsi problemi. Il primo posto in cui potresti incorrere in problemi è mentre sviluppi il tuo set di dati. Delimitatori mancanti, nomi di colonne non corrispondenti e timestamp fuori sincrono rendono difficile l'accesso, la concatenazione e l'unione di dati. Una volta che i dati si trovano in un set di dati JMP, si verificherà una serie diversa di problemi: dati errati o tipi di modelli, colonne senza valori, codici di errore e valori errati sono comuni. Infine, nel processo di analisi, potresti scoprire che è necessario rimuovere valori anomali, trasformare colonne o aggregare livelli variabili.
Iniziamo nel mezzo, la seconda area menzionata sopra. Hai creato il tuo set di dati, ma devi pulirlo prima dell'analisi. Sospetto che sia qui che incontrerai la maggior parte dei tuoi problemi. Per iniziare, ci concentreremo sulla rimozione di colonne non necessarie e sulla corretta correzione dei dati e dei tipi di modelli. Molto di questo può essere ottenuto con il solo Columns Viewer.
Per illustrare, userò i dati che ho scaricato dal sito web della Environmental Protection Agency degli Stati Uniti economia dei consumi automobilistici . Sette fogli di lavoro Excel separati (uno per ogni anno nel set di dati) sono stati scaricati e concatenati. Potete trovare i dati nella comunità di utenti JMP.
La prima cosa che possiamo fare è rimuovere le variabili con poche o nessuna informazione. Le colonne in cui tutti i valori sono uguali (o mancanti) sono candidati ideali. Utilizzo di Columns Viewer (sotto il menu Cols):
Filtra solo per i valori categoriali deselezionando Continuo . (Questo è lo stesso editor di colonne che può essere trovato in tutte le finestre di dialogo della piattaforma.)Seleziona tutte le colonne e fai clic Mostra riepilogo .Fai clic destro nella tabella sotto Statistiche riassuntive e scegliere Ordina per colonna ... Selezionare N categorie e controllare il Ascendente Qualsiasi colonna selezionata nella tabella di riepilogo verrà selezionata simultaneamente nella tabella di dati padre. Ciò semplifica molte operazioni di colonna, consentendo di preselezionare colonne con proprietà particolari prima di eseguire le operazioni.

Figura 1. Il filtro Viewer colonne può essere utilizzato per identificare rapidamente colonne della tabella dati con proprietà specifiche.

Figura 2. Le colonne selezionate nella finestra di riepilogo del Visualizzatore colonne sono anche selezionate nella tabella dati.
Si noti che le prime tre colonne hanno tutti i valori mancanti e possono essere rimosse. Una volta che li hai selezionati, Colli> Elimina colonne li rimuoverà dalla tabella dei dati. Si noti che le colonne eliminate non verranno rimosse dalla tabella di riepilogo, quindi potrebbe essere opportuno rieseguire Mostra riepilogo (ricorda di riselezionare tutte le colonne). Puoi riordinare il rapporto rimuovendo la vecchia tabella di riepilogo (guarda sotto l'hot spot accanto al Statistiche riassuntive titolo).
Le 10 colonne successive hanno un solo valore. La decisione di mantenerli dipende dalla percentuale di valori mancanti che hanno e se pensi che la loro identificazione fornisca ulteriori informazioni. Due delle colonne, Soppresso? e Polizia / Emerg? non hanno valori mancanti (cioè, tutte le righe sono identiche), quindi possono essere rimossi in modo sicuro. Sette delle restanti otto colonne sono per lo più mancanti (> 99,997%) e potrebbero essere buoni candidati per l'eliminazione. La colonna rimanente Guzzler? ha circa il 5% di non mancare e potrebbe valerne la pena. (Suppongo che nessuna delle colonne faccia parte di una variabile che è stata suddivisa su più colonne. Parlerò di trovare e correggere questa situazione in un post successivo.)
Negli esempi di categoria singola di cui sopra, mancava la maggior parte dei dati. Se, tuttavia, la maggior parte dei dati non era in discussione, è possibile utilizzare un argomento simile per giustificare quando rimuovere una colonna. Se una colonna è composta da un singolo valore, ma ha una proporzione abbastanza grande di valori mancanti, puoi considerare di mantenerla. Dove quei valori mancanti potrebbero dirti qualcosa.
Possiamo anche rimuovere colonne multi-categoria con un alto grado di mancanza. Per fare ciò, fare clic con il tasto destro e ordinare la tabella di riepilogo per N mancante . Non controllare il Ascendente casella questa volta, poiché si desidera prendere in considerazione solo le colonne i cui valori sono in gran parte mancanti. Poiché queste colonne hanno più di una categoria, puoi anche esaminarle in modo più dettagliato. Per fare ciò, selezionali nella tabella di riepilogo e fai clic su Distribuzione pulsante. Come prima, dovrai decidere quale proporzione di valori non mancanti giustifica il mantenimento della colonna.
Una volta terminato con i dati categoriali, è possibile eseguire le stesse operazioni con i dati continui. Nella finestra di dialogo del filtro, seleziona nuovamente Continuo e deseleziona Ordinale e Nominale (ricorda che tenendo premuto il tasto alt tasto prima di fare clic sull'hot spot consente di effettuare selezioni multiple). Dopo aver visualizzato il riepilogo, ordina in ordine crescente Std Dev (è all'estrema destra). Le colonne dove Std Dev uguale a zero ha solo un singolo valore. Ci dovrebbe essere solo uno ( Comb Coiled Rounded Adjusted ). Ordina per N mancante per trovare quelle colonne i cui valori sono per lo più mancanti.
Una volta terminata la rimozione delle colonne non necessarie, è possibile passare al controllo dei dati e dei tipi di modelli. Quando JMP legge inizialmente dati provenienti da altre fonti, le colonne contenenti solo numeri hanno il valore Numerico tipo di dati e Continuo tipo di modellazione. Altrimenti, gli viene assegnato il Personaggio tipo di dati e Nominale tipo di modellazione. Occasionalmente, JMP imposterà una colonna su Numerico anche quando ha pochi valori di carattere. Se ciò accade, riceverai un messaggio di avvertimento come quello in Figura 3.

Figura 3. Messaggio di avviso quando i valori dei caratteri sono mancanti.
Mentre i valori predefiniti in JMP funzionano bene nella maggior parte dei casi, ci sono alcune situazioni che dovresti sapere. Innanzitutto, se una colonna numerica ha testo estraneo - "NA", codici di errore, simboli per segnalare osservazioni insolite, ecc. - la colonna può essere letta come Personaggio / Nominale . In secondo luogo, i valori numerici possono corrispondere a coded valori e non misurato valori. In queste situazioni, ti consigliamo di trattare il tipo di modellazione come Nominale . Infine, in alcune situazioni i valori categorici devono essere trattati come ordinali. Fortunatamente, ci sono relativamente pochi casi in cui vi è una differenza tra la modellazione con Nominale dati e modellazione con Ordinale dati.
Quindi possiamo continuare a lavorare con Columns Viewer; il nostro prossimo compito sarà trovare colonne numeriche categoriali. (Le nostre altre attività dovranno aspettare il prossimo post.)
Per individuare queste colonne:
Crea un riepilogo di tutte le colonne continue nel Visualizzatore colonne.Sotto il Statistiche riassuntive hot spot, selezionare Vista tabella dati.Seleziona tutto il Numerico colonne e cambiare il loro tipo di modellazione in Ordinale . Mi piace usare Ordinal perché la maggior parte dei dati sarà inizialmente Continuo o Nominale . Rendere Ordinale mi fa capire che lo è Numerico , ma sto pensando di renderlo categorico. Assicurati che tutte le colonne nel Selettore vista colonne sono selezionati e fare clic Mostra riepilogo . Se hai un vuoto Selettore vista colonne box, riattiva prima Ordinal nel filtro Viewer colonne.Fare clic con il tasto destro all'interno del riepilogo e selezionare Crea nella tabella dati. Poiché hai già una vista dati, non è necessario crearne un'altra.Aggiorna la tabella dal passaggio 2 con la tabella del passaggio 4. Corrisponde alla colonna denominata colonne .Seleziona la tabella creata nel passaggio 2. Vai a Tabelle> Aggiornamento Seleziona la tabella creata nel passaggio 4 dalla casella di riepilogo e verifica il Abbina colonne Supponendo che tu non abbia cambiato alcun nome di colonna, seleziona le colonne colonne da ogni tabella e fare clic Incontro . I risultati saranno simili alla Figura 4.Clic ok .Ordina per N categorie .
Figura 4. Utilizzo di Aggiornamento con colonne corrispondenti.
Come con la tabella di riepilogo nella finestra del rapporto, la tabella risultante è collegata alla tabella di dati da cui è stata creata. Poiché stai utilizzando una visualizzazione dati, potresti dover deselezionare qualsiasi colonna che potrebbe essere stata precedentemente selezionata nella tabella dei dati padre. Per trovare le variabili categoriali, cerca quelle colonne che hanno un piccolo numero di categorie e / o hanno un valore Min vicino a 0.
Mentre questo approccio alla ricerca di dati numerici categoriali è tutt'altro che perfetto, è un inizio facile e veloce. È possibile eseguire un semplice controllo selezionando le righe nella tabella dei dati di riepilogo, tornando alla tabella padre, quindi eseguendo Distribuzione sulle colonne selezionate. Se lo fai con le colonne N categorie uguale a 6 o meno, si noterà che alcune delle colonne contengono valori con decimali. Mentre sarebbe stato carino escludere queste colonne dall'inizio, il Viewer colonne attualmente non lo prevede, quindi lo faremo con un po 'di scripting.
Ne parleremo e più la prossima volta.