La manipulación de datos , a veces denominada manipulación de datos , es el proceso de transformación y mapeo de datos de un formato de datos " en bruto " a otro formato con la intención de hacerlos más apropiados y valiosos para una variedad de propósitos posteriores, como el análisis. El objetivo de la manipulación de datos es garantizar la calidad y la utilidad de los datos. Los analistas de datos suelen dedicar la mayor parte de su tiempo al proceso de manipulación de datos en comparación con el análisis real de los datos.
El proceso de manipulación de datos puede incluir la manipulación posterior , la visualización de datos , la agregación de datos, el entrenamiento de un modelo estadístico , así como muchos otros usos potenciales. La manipulación de datos generalmente sigue un conjunto de pasos generales que comienzan con la extracción de los datos en forma bruta de la fuente de datos, la "manipulación" de los datos en bruto (por ejemplo, ordenándolos) o el análisis de los datos en estructuras de datos predefinidas y, finalmente, el depósito del contenido resultante en un receptor de datos para su almacenamiento y uso futuro. [1] Está estrechamente alineado con el proceso ETL .
El término no técnico "wrangler" se suele decir que deriva del trabajo realizado por el Programa Nacional de Preservación e Infraestructura de Información Digital (NDIIPP) de la Biblioteca del Congreso de los Estados Unidos y su socio de programa, la Emory University Libraries, con sede en MetaArchive Partnership. El término "mung" tiene sus raíces en munging , como se describe en el Jargon File . [2] El término "data wrangler" también se sugirió como la mejor analogía para describir a alguien que trabaja con datos. [3]
Una de las primeras menciones de la manipulación de datos en un contexto científico fue hecha por Donald Cline durante el Experimento de Procesos de Tierras Frías de la NASA/NOAA. [4] Cline afirmó que los manipuladores de datos "coordinan la adquisición de toda la colección de datos del experimento". Cline también especifica las tareas que normalmente maneja un administrador de almacenamiento para trabajar con grandes cantidades de datos . Esto puede ocurrir en áreas como proyectos de investigación importantes y la realización de películas con una gran cantidad de imágenes complejas generadas por computadora . En la investigación, esto implica tanto la transferencia de datos desde el instrumento de investigación a la red de almacenamiento o instalación de almacenamiento, como la manipulación de datos para su reanálisis a través de instrumentos informáticos de alto rendimiento o el acceso a través de bibliotecas digitales basadas en ciberinfraestructura .
Con la llegada de la inteligencia artificial a la ciencia de datos, se ha vuelto cada vez más importante que la automatización de la manipulación de datos tenga controles y contrapesos muy estrictos, por lo que el proceso de manipulación de datos no ha sido automatizado por el aprendizaje automático . La manipulación de datos requiere más que una solución automatizada, requiere conocimiento de qué información debe eliminarse y la inteligencia artificial no está al nivel de comprender tales cosas. [5]
La manipulación de datos es un superconjunto de la minería de datos y requiere procesos que algunos utilizan, pero no siempre. El proceso de minería de datos consiste en encontrar patrones dentro de grandes conjuntos de datos, donde la manipulación de datos transforma los datos para ofrecer información sobre ellos. Aunque la manipulación de datos es un superconjunto de la minería de datos, no significa que la minería de datos no lo utilice, existen muchos casos de uso para la manipulación de datos en la minería de datos. La manipulación de datos puede beneficiar a la minería de datos al eliminar datos que no benefician al conjunto general o que no están formateados correctamente, lo que producirá mejores resultados para el proceso general de minería de datos.
Un ejemplo de minería de datos que está estrechamente relacionado con la manipulación de datos es ignorar los datos de un conjunto que no está conectado al objetivo: digamos que hay un conjunto de datos relacionado con el estado de Texas y el objetivo es obtener estadísticas sobre los residentes de Houston, los datos del conjunto relacionados con los residentes de Dallas no son útiles para el conjunto general y se pueden eliminar antes del procesamiento para mejorar la eficiencia del proceso de minería de datos.
Con el aumento de los datos sin procesar, aumenta la cantidad de datos que no son intrínsecamente útiles, lo que aumenta el tiempo dedicado a limpiar y organizar los datos antes de que puedan analizarse, que es donde entra en juego la manipulación de datos. El resultado de la manipulación de datos puede proporcionar estadísticas de metadatos importantes para obtener más información sobre los datos; es importante garantizar que los metadatos sean coherentes, de lo contrario, pueden causar obstáculos. La manipulación de datos permite a los analistas analizar datos más complejos con mayor rapidez, lograr resultados más precisos y, debido a esto, se pueden tomar mejores decisiones. Muchas empresas han optado por la manipulación de datos debido al éxito que ha traído consigo.
Los pasos principales en la manipulación de datos son los siguientes:
Este término general describe cómo comprender sus datos. Este es el primer paso para familiarizarse con ellos.
Estos pasos son un proceso iterativo que debería generar un conjunto de datos limpios y utilizables que luego se puedan utilizar para el análisis. Este proceso es tedioso pero gratificante, ya que permite a los analistas obtener la información que necesitan de un gran conjunto de datos que, de otro modo, serían ilegibles.
El resultado de utilizar el proceso de manipulación de datos en este pequeño conjunto de datos muestra un conjunto de datos significativamente más fácil de leer. Todos los nombres ahora tienen el mismo formato, {nombre apellido}, los números de teléfono también tienen el mismo formato {código de área-XXX-XXXX}, las fechas tienen formato numérico {AAAA-mm-dd} y los estados ya no están abreviados. La entrada de Jacob Alan no tenía datos completamente formados (falta el código de área en el número de teléfono y la fecha de nacimiento no tenía año), por lo que se descartó del conjunto de datos. Ahora que el conjunto de datos resultante está limpio y es legible, está listo para implementarse o evaluarse.
Las transformaciones de datos se aplican normalmente a entidades distintas (por ejemplo, campos, filas, columnas, valores de datos, etc.) dentro de un conjunto de datos, y podrían incluir acciones como extracciones, análisis, unión, estandarización, ampliación, limpieza, consolidación y filtrado para crear resultados de procesamiento deseados que se puedan aprovechar más adelante.
Los destinatarios podrían ser personas, como arquitectos de datos o científicos de datos que investigarán los datos más a fondo, usuarios comerciales que consumirán los datos directamente en informes o sistemas que procesarán aún más los datos y los escribirán en destinos como almacenes de datos , lagos de datos o aplicaciones posteriores.
Dependiendo de la cantidad y el formato de los datos entrantes, la manipulación de datos se ha realizado tradicionalmente de forma manual (por ejemplo, a través de hojas de cálculo como Excel), herramientas como KNIME o mediante scripts en lenguajes como Python o SQL . R , un lenguaje que se utiliza a menudo en la minería de datos y el análisis de datos estadísticos, ahora también se utiliza a veces para la manipulación de datos. [6] Los manipuladores de datos suelen tener conjuntos de habilidades dentro de: R o Python, SQL, PHP, Scala y más lenguajes que se utilizan normalmente para analizar datos.
Los sistemas de manipulación visual de datos se desarrollaron para que la manipulación de datos fuera accesible para los no programadores y más sencilla para los programadores. Algunos de estos sistemas también incluyen recomendadores de IA integrados y facilidades de programación por ejemplo para brindar asistencia al usuario, y técnicas de síntesis de programas para generar automáticamente código de flujo de datos escalable. Los primeros prototipos de herramientas de manipulación visual de datos incluyen OpenRefine y el sistema de investigación Stanford/Berkeley Wrangler; [7] este último evolucionó hasta convertirse en Trifacta .
Otros términos para estos procesos incluyen franquicia de datos, [8] preparación de datos y manipulación de datos.
Dado un conjunto de datos que contiene información sobre pacientes médicos, su objetivo es encontrar una correlación para una enfermedad. Antes de comenzar a iterar a través de los datos, asegúrese de comprender el resultado: ¿está buscando pacientes que padecen la enfermedad? ¿Existen otras enfermedades que puedan ser la causa? Una vez que se comprende el resultado, puede comenzar el proceso de manipulación de datos.
Comience por determinar la estructura del resultado, lo cual es importante para comprender el diagnóstico de la enfermedad.
Una vez que se determina una estructura final, limpie los datos eliminando cualquier punto de datos que no sea útil o que esté mal formado; esto podría incluir pacientes a los que no se les haya diagnosticado ninguna enfermedad.
Después de limpiar los datos, vuelva a examinarlos. ¿Hay algo que se pueda agregar al conjunto de datos que ya se conoce y que pueda beneficiarlo? Un ejemplo podría ser las enfermedades más comunes en la zona. Estados Unidos y la India son muy diferentes en lo que respecta a las enfermedades más comunes.
Ahora viene el paso de validación: determinar las reglas de validación para qué puntos de datos deben comprobarse para comprobar su validez, lo que podría incluir la fecha de nacimiento o la verificación de enfermedades específicas.
Después del paso de validación, los datos deben organizarse y prepararse para su implementación o evaluación. Este proceso puede ser beneficioso para determinar correlaciones para el diagnóstico de enfermedades, ya que reducirá la gran cantidad de datos a algo que se pueda analizar fácilmente para obtener un resultado preciso.