La neteja de dades (en anglès data cleansing o data scrubbing) és l'acció o treball de descobriment, correcció i/o eliminació de registres de dades errònies d'una taula o d'una base de dades. El procés de neteja de dades permet identificar dades incompletes, incorrectes, inexactes, no pertinents, etc. i després substituir, modificar o eliminar aquestes dades brutes ("data duty").

Inici i final d'un procés de neteja de dades.
Inici i final d'un procés de neteja de dades.

Aquest procés és una part crucial de l'anàlisi de dades, especialment quan es recopilen dades quantitatives.

Després de la neteja, la base de dades podrà ser compatible amb altres bases de dades similars d'un sistema.

Les inconsistències descobertes, modificades o eliminades en un conjunt de dades, poden ser per causa de les definicions de diccionari de dades diferents d'entitats similars, els errors d'entrada de l'usuari i la corrupció en el moment de la transmissió o l'emmagatzematge.

La neteja de dades es diferencia de la validació de dades en el fet que gairebé sempre compleix la funció de rebutjar els registres erronis durant l'entrada al sistema, i no en lots de data. El procés de neteja de dades inclou la validació i, a més, la correcció de dades per tal d'assolir dades de qualitat.

Motivació modifica

Les dades falses o incorrectes poden crear conclusions falses i adreçar a inversions. Si un govern vol analitzar dades d'un cens de població, serà molt important que les dades siguin fiables per evitar prendre decisions fiscals errònies. En àmbits laborals forenses, comptabilitat i investigació de fraus, s'usa la neteja de dades per preparar les dades abans d'enviar-les a un magatzem de dades. Hi ha paquets de programari disponibles per poder "netejar" dades d'adreces, típicament realitzats per una interfície de programació d'aplicacions (API de l'anglès).

Un altre exemple de cas d'ús real seria el cas de la realització d'una enquesta pública en línia. Els usuaris inseririen els seus noms i adreces electròniques i així doncs, abans de treballar amb aquelles dades i treure'n conclusions, caldria netejar les dades per tal d'esborrar aquells camps quan, per exemple, les adreces de correu no segueixen el format d'un correu normal (correu inventat o erroni), o quan els noms i els cognoms són nuls o l'usuari ha deixat algun camp sense emplenar.

Qualitat de les dades modifica

La qualitat de dades ha de complir els següents requisits:

 
La qualitat de les dades ha de complir un certs requisits.
  • Exactitud: Les dades han de complir els requisits d'integritat, consistència i densitat.
  • Integritat: Les dades han de complir els requisits d'enteresa i validesa.
    • Enteresa: Assolida per la correcció de dades que contenen anomalies.
    • Validesa: Aconseguida per la quantitat de dades que satisfan les restriccions d'integritat.
  • Consistència: Obtingut per la correcció de contradiccions i anomalies sintàctiques.
  • Uniformitat: relacionat amb irregularitats.
  • Densitat: Conèixer el quocient de valors omesos sobre el nombre de valors totals.
  • Unicitat: Relacionat amb dades duplicades.

Procés de neteja de dades modifica

En una neteja de dades es realitzen els següents processos:

  • Auditoria de Dades: Les dades són revisades amb mètodes estadístics que detecten anomalies i contradiccions.
  • Definició de Workflow (Flux de Treball): La detecció i la neteja d’anomalies són realitzades per una seqüència d’operacions sobre les dades ja conegudes com a workflow. Per aconseguir un flux de treball adient, cal identificar les causes de les anomalies i dels errors. Per exemple, si es troba que una anomalia és el resultat d’errors del maquinari en l’etapa d’entrada de dades, la disposició del teclat pot ajudar en la solució dels possibles problemes.
  • Execució de Workflow: En aquesta etapa, el workflow és executat després que la seva especificació es completa i la seva correcció és verificada. La implementació del workflow hauria de ser eficient encara sobre els conjunts grans de dades que inevitablement plantegen una compensació, perquè l'execució de l'operació netejadora pot ser costosa.
  • Postprocès i control: Les dades no corregides durant l’execució del workflow haurien de ser corregides manualment. El resultat és un nou cicle en el procés de neteja de dades on les dades són revisades novament perquè s'ajustin a les especificacions d'un workflow addicional per realitzar-ne un tractament automàtic.

Mètodes més utilitzats modifica

Els mètodes més utilitzats per fer una neteja de dades són els següents:

  • Anàlisi: L'anàlisi en la neteja de dades és realitzada per a la detecció d'errors de sintaxi. Un analitzador gramatical decideix si una corda de dades és acceptable dins de l'especificació de dades permesa. Això és similar a la manera que un analitzador gramatical treballa amb gramàtiques i llengües.
  • Transformació de Dades: La Transformació de Dades permet traçar un mapa de dades, en el format esperat. Això inclou conversions de valors o funcions de traducció i la normalització de valors numèrics d'adaptació a valors mínims i màxims.
  • Eliminació de duplicats: La detecció de duplicats requereix un algorisme per determinar si les dades contenen representacions dobles de la mateixa entitat. En general, les dades són ordenades per una dada "clau" o "pivot" que permet la identificació més ràpida.
  • Mètode Estadístic: Inclou analitzar les dades usant mitjanes, desviació estàndard, rangs o algorismes de clúster. Aquesta anàlisi es du a terme per experts que identifiquen errors. Encara que la correcció de dades sigui difícil, ja que no se sap el valor veritable, es poden resoldre posant els valors a una mitjana o a un altre valor estadístic. Els mètodes estadístics també poden ser emprats per manejar els valors que fallen, que poden ser substituïts per un o diversos valors possibles que en general són obtinguts per algorismes d'augment de dades extenses.

Eines de Neteja de Dades modifica

Hi ha moltes eines de neteja de dades, com ara: Trifacta, OpenRefine, Paxata i Alteryx entre altres. També és comú l'ús de llibreries com Pandas (software) de Python, o Dplyr per R.

Actualment, l’única tecnologia que permet fer una neteja de dades de forma distribuïda amb la robustesa i la tecnologia d'Apache Spark és Optimus.

Optimus és un framework destacat per la neteja, el preprocessament i l'anàlisi exploradora de les dades d’una manera distribuïda amb Apache Saprk. Implementa diverses eines útils pel control i manipulació de dades que faciliten el treball de l'analista de dades. El primer avantatge que té respecte a qualsevol altra biblioteca o framework de neteja de dades pública, és que funciona a computadora portàtil o en un gran clúster i alhora és de fàcil instal·lació i ús.

Optimus és OpenSource, aquí podrà trobar la documentació i els exemples.

Reptes i problemes modifica

  • Correcció d'errors i pèrdua d'informació: El repte més gran dins de la neteja de dades és la correcció de valors, ja que inclou eliminar duplicats i entrades incorrectes. En molts casos, la informació disponible sobre aquestes anomalies és limitada i insuficient per determinar les transformacions necessàries o correccions, abandonant la qualificació d'aquestes entrades com l'única solució.
  • L'eliminació de dades, també condueix a la protecció i el teniment de Dades Netejades: Després d'haver realitzat la neteja de dades i assolir una col·lecció de dades sense errors, la reneteja només s'hauria de repetir sobre els valors que s'han canviat. Això es fa mantenint un mínim sistema de neteja amb tècniques d'administració de dades eficient.
  • Neteja de Dades en Entorns virtualment Integrats: En les fonts pràcticament integrades com a DiscoveryLink de la IBM, la neteja de dades ha de ser realitzada sempre amb accés de dades de diferents fonts, amb una considerable disminució del temps de resposta i major eficàcia.
  • Neteja de dades al Framework: En molts casos no serà possible arribar a un mapa complet de neteja de dades que guiï el procés per endavant. Això fa que la neteja de dades sigui un procés iteratiu que implica l'exploració significativa i la interacció que pot requerir un framework, és a dir, un marc que inclogui una col·lecció de mètodes per a la detecció d'errors i l'eliminació a més de la revisió de dades, treballs que es poden afegir a altres tasques i etapes i informàtiques com la integració i el manteniment.

Vegeu també modifica

Enllaços externs modifica