Data Munging es básicamente el término moderno para limpiar un conjunto de datos desordenado . Por lo general, se usa junto con otro término moderno ‘ciencia de datos’ que es básicamente análisis de datos.
Si alguna vez realizó un análisis de datos, es posible que haya encontrado una selección de características antes de aplicar su modelo (modelo analítico, quiero decir) a los datos.
Por lo tanto, en general, toda la actividad que realiza en los datos sin procesar para que esté “lo suficientemente limpia” como para ingresar a su algoritmo analítico es la mezcla de datos.
- ¿Los datos de centrado y escalado siempre dan mejores modelos lineales?
- Cómo convertirse en un científico de datos en 4-5 meses si no tengo experiencia previa con ningún lenguaje de programación
- Cómo lidiar con la falta de disponibilidad de datos o datos incorrectos para resolver problemas de ciencia de datos
- ¿Quién fue el primer científico de datos?
- Andrew Ng: ¿Qué proyectos personales mejorarían la empleabilidad de un estudiante de ML / Data Science (suponiendo que no haya antecedentes en CS / STEM)?
A veces, la mezcla de datos también crea algunos datos derivados. Una de las cosas más comunes que hace el munging de datos es que crea identificadores únicos. Pero la derivación de datos no es el objetivo principal del munging de datos.
Wikipedia tiene un artículo sobre la disputa de datos, que es esencialmente lo que es la mezcla de datos.
Datos sin procesar:
Después de Munging de datos
Un ejemplo sería tratar de analizar los registros de acceso de Apache (archivos de registro – Apache HTTP Server). Ahora, los registros de acceso no son necesariamente un conjunto de datos desordenados, pero es lo suficientemente desordenado como para ejecutar directamente cualquier algoritmo de ML en él sin ningún procesamiento previo.
Entonces, cada línea en el archivo se ve así:
aaa.xx.65.186 - - [25/Jul/2007:05:55:05 -0500] "GET http://www.some-advertising-site.com/banner/digitsHTTP/1.1" 404 305 "http://some-different-website.com/" "legitimate-looking agent"
Quería obtener una lista de IP y la cantidad de veces que golpearon puede ser un análisis que requiera saber en qué geografía es popular el sitio web; o puede ser de qué IP provienen los spammers; o en qué área necesitamos más ventas; o qué IP necesitaba ser bloqueada porque están fuera de nuestra zona de ventas o podríamos predecir qué localidad está a punto de experimentar un aumento de la demanda y queremos enviar más productos allí antes de que suceda.
Todas estas preguntas pueden responderse si tenemos una información con dos columnas: una con direcciones IP y otra cómo puede llegar al sitio web.
Aquí hay un script perl de una línea que convertiría ese archivo de registro desordenado en dos columnas CSV (no realmente CSV pero delimitado por token) con IP y recuento de visitas.
perl -MData :: Dumper -nae '++ $ n {$ F [0]} if / GET http /; \ END {print Dumper \% n} 'access.log
¿Resultado?
$ VAR1 = { 'aaa.xx.65.186' => 132, 'bb.yyy.7.60' => 48, 'ccc.zzz.46.147' => 111, 'dd.qq.71.82' => 33 }; # IP reales oscurecidas
Origen:
munge / muhnj / vt.
1. [despectivo] Para transformar imperfectamente la información. 2. Una reescritura integral de una rutina, estructura de datos o todo el programa. 3. Para modificar los datos de alguna manera, el orador no necesita entrar en este momento o no puede describir sucintamente (comparar murmullos ). 4. Para agregar spamblock a una dirección de correo electrónico.
Este término a menudo se confunde con mung , que probablemente se deriva de él. Sin embargo, también parece que la palabra ‘munge’ era de uso común en Escocia en la década de 1940 y en Yorkshire en la década de 1950, como un verbo, que significa masticar en un desastre masticado, y como sustantivo, que significa el resultado de munging algo arriba (el paralelo con el par kluge / kludge es divertido). El OED informa ‘munge’ como un verbo arcaico que significa “limpiar (la nariz de una persona)”.
Herramientas:
Herramientas de Unix: sed, grep, awk, pipe, sort, uniq, tr, tail, head, shell script
Idiomas: Python, Perl, R
Procesadores de grandes datos: Hadoop / Hive / Pig, Twitter Storm, Spark / Shark
Dato curioso: (bastante asqueroso)
Ya sabes que munging es básicamente limpiar cosas o “sacar la mierda”. Se rumorea que alrededor de 1990, Los Ángeles, una actividad de excavar cadáveres femeninos frescos y saltar sobre ellos para que los asuntos internos salgan de las aberturas se llamaba cadáver munging.
[Esta no es la descripción detallada del acto. Es aún más asqueroso cuando ‘saltas’ a los detalles, pero preferiría que no quisieras que vomites en la pantalla. Si quieres leer toda la maldad de esto. Lea aquí: cadáver munging USTED HA SIDO AVISADO .]
Ahora nunca olvidaría qué es el munging de datos.
Fuentes:
1. ¿Quién está haciendo solicitudes web falsas?
2. Disputa de datos
3. ¿Qué es el Munging de datos?
4. cadáver munging (información despectiva)