Aiuta a capire come sono stati registrati i dati.
Vorrei condividere una storia . Una volta, molto tempo fa, molti set di dati venivano archiviati solo in scolorimento. In quei giorni bui ho stipulato un contratto con un'organizzazione (di grande genealogia e dimensioni; molti di voi probabilmente possiedono il proprio stock) per informatizzare circa 10 ^ 5 registrazioni di dati di monitoraggio ambientale in uno dei suoi impianti di produzione. Per fare ciò, ho personalmente contrassegnato uno scaffale di rapporti di laboratorio (per mostrare dove fossero i dati), creato moduli di immissione dei dati e contratto con un'agenzia temporanea per alfabetizzatilavoratori per digitare i dati nei moduli. (Sì, hai dovuto pagare un extra per le persone che potevano leggere.) A causa del valore e della sensibilità dei dati, ho condotto questo processo in parallelo con due lavoratori alla volta (che di solito cambiavano di giorno in giorno). Ci sono volute un paio di settimane. Ho scritto un software per confrontare le due serie di voci, identificando e correggendo sistematicamente tutti gli errori che sono emersi.
Ragazzo ci sono stati errori! Cosa può andare storto? Un buon modo per descrivere e misurare gli errori è a livello del record di base , che in questa situazione era una descrizione di un singolo risultato analitico (la concentrazione di alcuni prodotti chimici, spesso) per un particolare campione ottenuto in un determinato punto di monitoraggio su un data data. Nel confrontare i due set di dati, ho trovato:
Errori di omissione : un set di dati includerebbe un record, un altro no. Questo di solito accade perché (a) una o due righe verrebbero ignorate nella parte inferiore di una pagina o (b) un'intera pagina verrebbe ignorata.
Apparenti errori di omissione che erano realmente errori di immissione dei dati. Un record è identificato da un nome punto di monitoraggio, una data e "analita" (di solito un nome chimico). Se uno di questi presenta un errore tipografico, non verrà associato agli altri record a cui è correlato. In effetti, il record corretto scompare e appare un record errato.
Duplicazione falsa . Gli stessi risultati possono apparire in più fonti, essere trascritti più volte e sembrano essere vere misure ripetute quando non lo sono. I duplicati sono facili da rilevare, ma decidere se sono errati dipende dal sapere se i duplicati devono apparire anche nel set di dati. A volte non puoi proprio saperlo.
Errori di immissione dei dati di Frank . I "buoni" sono facili da catturare perché cambiano il tipo di dato: usando la lettera "O" per la cifra "0", ad esempio, trasforma un numero in un non-numero. Altri buoni errori cambiano il valore così tanto che può essere facilmente rilevato con test statistici. (In un caso, la cifra principale in "1.000.010 mg / Kg" è stata tagliata, lasciando un valore di 10. Questo è un enorme cambiamento quando si parla di una concentrazione di pesticidi!) I cattivi errori sono difficili da rilevare perché cambiano un valore in uno che si adatta (più o meno) al resto dei dati, come digitare "80" per "50". (Questo tipo di errore si verifica continuamente con il software OCR.)
Trasposizioni . I valori corretti possono essere inseriti ma associati a chiavi record errate. Questo è insidioso, perché le caratteristiche statistiche globali del set di dati potrebbero rimanere inalterate, ma è possibile creare differenze spurie tra i gruppi. Probabilmente solo un meccanismo come la doppia entrata è persino in grado di rilevare questi errori.
Una volta che sei a conoscenza di questi errori e conosci, o hai una teoria, su come si verificano, puoi scrivere script per trollare i tuoi set di dati per la possibile presenza di tali errori e segnalarli per ulteriore attenzione. Non è sempre possibile risolverli, ma almeno è possibile includere un campo "commento" o "flag di qualità" per accompagnare i dati durante le loro analisi successive.
Da quel momento ho prestato attenzione ai problemi di qualità dei dati e ho avuto molte più opportunità di effettuare controlli completi di grandi set di dati statistici. Nessuno è perfetto; beneficiano tutti di controlli di qualità. Alcuni dei principi che ho sviluppato negli anni per farlo includono
Ove possibile, creare ridondanza nelle procedure di immissione e trascrizione dei dati: checksum, totali, voci ripetute: qualsiasi cosa per supportare controlli interni automatici di coerenza.
Se possibile, creare e sfruttare un altro database che descriva come dovrebbero essere i dati: vale a dire metadati leggibili dal computer. Ad esempio, in un esperimento farmacologico potresti sapere in anticipo che ogni paziente sarà visto tre volte. Ciò consente di creare un database con tutti i record corretti e i relativi identificatori con i valori che aspettano solo di essere compilati. Compilarli con i dati forniti e quindi verificare la presenza di duplicati, omissioni e dati imprevisti.
Normalizza sempre i tuoi dati (in particolare, mettili in almeno la quarta forma normale ), indipendentemente da come prevedi di formattare il set di dati per l'analisi. Questo ti costringe a creare tabelle di ogni entità concettualmente distinta che stai modellando. (Nel caso ambientale, ciò includerebbe tabelle di posizioni di monitoraggio, campioni, sostanze chimiche (proprietà, intervalli tipici, ecc.), Prove di quei campioni (una prova di solito copre una serie di sostanze chimiche) e i singoli risultati di tali prove. In tal modo si creano molti controlli efficaci sulla qualità e coerenza dei dati e si identificano molti valori potenzialmente mancanti o duplicati o incoerenti.
Questo sforzo (che richiede buone capacità di elaborazione dei dati ma è semplice) è sorprendentemente efficace. Se aspiri ad analizzare set di dati di grandi dimensioni o complessi e non hai una buona conoscenza pratica dei database relazionali e della loro teoria, aggiungi quello al tuo elenco di cose da imparare il prima possibile. Pagherà dividendi per tutta la tua carriera.
Esegui sempre quanti più "stupidi" controlli possibili . Si tratta di una verifica automatizzata di cose ovvie tali che le date rientrano nei loro periodi previsti, il conteggio dei pazienti (o sostanze chimiche o altro) si sommano sempre correttamente, che i valori sono sempre ragionevoli (ad esempio, un pH deve essere compreso tra 0 e 14 e forse in un intervallo molto più ristretto, ad esempio, per le letture del pH del sangue), ecc. Qui è dove la competenza del dominio può essere di grande aiuto: lo statistico può fare domande senza paura agli esperti e sfruttare le risposte per controllare i dati.
Naturalmente si può dire molto di più - l'argomento merita un libro - ma questo dovrebbe essere sufficiente per stimolare le idee.