data pipeline – Escuela De Datos http://es.schoolofdata.org evidencia es poder Thu, 12 Jul 2018 14:42:48 +0000 es hourly 1 https://wordpress.org/?v=5.3.2 114974193 Flourish: visualizaciones fáciles en base a plantillas http://es.schoolofdata.org/2018/07/12/flourish-visualizaciones-faciles-en-base-a-plantillas/ http://es.schoolofdata.org/2018/07/12/flourish-visualizaciones-faciles-en-base-a-plantillas/#respond Thu, 12 Jul 2018 14:41:05 +0000 http://es.schoolofdata.org/?p=2612 Esta herramienta de visualización te permite crear gráficos, mapas e historias interactivas en línea. Se basa en una serie de principios básicos que pretenden facilitar el trabajo para cualquier usuario:

  • No se requiere código solo conectar los datos con las librerías de plantillas con las que cuenta
  • Flexibilidad hacia arriba al permitirle a algunos usuarios poder crear plantillas privadas y a la medida
  • Storytelling animado para poder guiar a las audiencias a través de datos. Explicándolos ya sea a través de la publicación o a medida que interactúan.
  • Embeds y descargas ya que los proyectos se pueden incrustar en cualquier página, pero también se pueden descargar como archivos crudos o raw para otros usos.

¿Qué plantilla escoger?

De momento, Flourish se encuentra en una fase beta en la que ofrece 17 plantillas que te mostramos y comentamos.

Globo terráqueo de conexiones

Esta plantilla tridimensional es ideal para visualizar un flujo de datos como patrones de migración, transferencias monetarias o vuelos. Cada fila en el conjunto de datos es representada como un arco entre dos locaciones, el cual tiene un tamaño escalable dependiendo del flujo.

Para usar esta plantilla necesitas tener las siguientes columnas: locación de origen, locación de destino y valor. Lo mejor es que los orígenes y destinos estén acompañados de la codificación de países ISO Alpha-3 (códigos de tres letras). Sino, puedes especificar latitud, longitud y un nombre para desplegar.

 

Barra apilada para resultados electorales

Un gráfico de barras apiladas (stacked bar) ideal para resultados electorales. Con él puedes mostrar un resultado general, o especificar por regiones que pueden ser seleccionadas de un menú dropdown. Incluye una funcionalidad que permite construir coaliciones, alternando los partidos en las leyendas para personalizarlas y también la opción de agregar datos históricos para comparar los resultados actuales con la elección anterior.

Para usar esta plantilla cada fila debería ser una región (país, estado, departamento o municipio). Esa región debería tener una columna con su nombre y una columna por cada partido en la elección.

Carrera de caballos

Este tipo de gráfico muestra el cambio de un rango o su evolución en cierto tiempo. Esta visualización es muy utilizada para mostrar los datos de cualquier tipo de competencia o «carrera»: candidatos en unas elecciones, equipos de futbol en una competencia, por ejemplo. Grafica en dos modalidades y permite animaciones entre ambas: un gráfico lineal que traza los valores en bruto y un gráfico de evolución que calcula y traza los rangos de estos datos.

Para usar esta plantilla cada fila después de los encabezados debe corresponder a un participante de la carrera. En las columnas se señalará: nombre del participante y cuantas columnas sean necesarias para cada «etapa» de la carrera (semanas, días, años, montos, etc). Todas las etapas se grafican con el mismo ancho.

Mapa de íconos

En este mapa interactivo usas iconos, imágenes o emojis para marcar un lugar. La plantilla crea una calve que se duplica para que los usuarios puedan hacer click tanto a una categoría o a un ícono.

Para usar esta plantilla necesitas una hoja de cálculo con una fila para cada elemento en el mapa y sus respectivas latitud y longitud. Para agregar íconos debes tener una columna como categoría.

Gráficos de lineas, barras y pie o pastel

Elige entre un gráfico de líneas, uno de barras (incluso si son agrupadas o apiladas), de área o de pie.  Para utilizar esta plantilla necesitas una columna con «etiquetas» (que pueden ser categorías, fechas, números, etc) y una o más columnas con «valores» (que debe contener números). Cada columna de valores crea una línea, barra o pedazo de pie, por lo que agrega cuantas requieras. Para seleccionar entre las opciones solo intercambia entre las opciones en «chart type«.

Mapamundi

Un mapa del mundo con opciones para colorearlo en escala, señalarlo con puntos y ventanas emergentes. Para graficar usa un conjunto de datos para los colores y otro para los círculos en coordinadas específicas.

Para utilizar este gráfico tus datos deberían contener una columna con nombres de región y una o más columna con valores. Los nombres de las regiones deberían coincidir con los datos de ejemplo precargados.

Gráfico de redes

Una red de puntos vinculados como un diagrama de nodos. Para lograr esta unión, el conjunto de datos debe de tener al menos dos columnas con los vínculos. Cada fila especifica los puntos (que se mostrarán como círculos) que se vinculan entre sí (a través de una línea). Se puede incluir una tercera columna que se use para definir el ancho del vínculo.

Si bien una hoja de cálculo es suficiente para crear un diagrama de red, una segunda hoja de «Puntos» permite una mayor flexibilidad. En lugar de dejar que Flourish determine todos los puntos para agregar a la red en función de los enumerados en la hoja Vínculos, las filas en la hoja Puntos definen la colección completa de puntos y se puede usar para asignar color a grupos codificados o tamaño a los puntos.


Capacidades y límites

Como muchos programas gratuitos, Flourish funciona bajo un esquema freemium. La versión gratis te permite publicar y compartir visualizaciones o incrustarlas en tu website. Estos trabajos permanecen públicos y cualquiera puede acceder a ellos, lo cual es bueno para comunicadores y medios, pero no tanto para organizaciones que lidian con información sensible. Existen versiones de pago personales y para empresas que te permiten descargar el código HTML y hospedarlo en tu propio servidor.

Con todas las versiones de Flourish puedes descargar un archivo .SVG que luego puedes abrir y editar en programas como Adobe Illustrator. Esto hace que Flourish sea una herramienta útil también para aquellos que trabajan en medios impresos y hacen infografías.

Flourish tiene también un programa para que organizaciones periodísticas tengan una cuenta premium de manera gratuita que les permita trabajos privados, plantillas personalizadas y proyectos compartidos. Si formas parte de un medio puedes aplicar a través de este formulario al programa.

Como siempre, queremos saber si te resultó útil nuestro tutorial y nos encantaría ver qué visualizaciones creas con Flourish. Escríbenos por twitter a @EscuelaDeDatos

Flattr this!

]]>
http://es.schoolofdata.org/2018/07/12/flourish-visualizaciones-faciles-en-base-a-plantillas/feed/ 0 2612
Algoritmos y clusters: Encuentra errores y límpialos de manera fácil con OpenRefine http://es.schoolofdata.org/2018/05/03/algoritmos-y-clusters-encuentra-errores-y-limpialos-de-manera-facil-con-openrefine/ http://es.schoolofdata.org/2018/05/03/algoritmos-y-clusters-encuentra-errores-y-limpialos-de-manera-facil-con-openrefine/#respond Thu, 03 May 2018 20:32:40 +0000 http://es.schoolofdata.org/?p=2486

¿Te has encontrado con bases de datos que tienen pequeños errores de transcripción? ¿Espacios de más, uso desordenado de mayúsculas y minúsculas, o registros que representan al mismo dato pero que fueron escritos con pequeñas diferencias? Con la herramienta OpenRefine puedes automatizar mucho del doloroso proceso de limpiar una base de datos. En este tutorial te enseñaremos una de sus funciones más útiles: la clusterización —o generación de agrupaciones automáticas— y los diferentes algoritmos que determinan las coincidencias entre registros.

El concepto de clusters (o agrupaciones, en español) se utiliza mucho en ciencias sociales y exactas para referirse a un tipo de análisis que toma un conjunto de datos y las reorganiza en grupos con características similares.  

En OpenRefine, cuando uno hace clusters significa que el programa está encontrando grupos de valores diferentes que pueden ser representaciones alternativas del mismo valor. Por ejemplo, si hablamos de ciudades, “New York”, “new york” y “Nueva York” son tres valores diferentes pero que se refieren al mismo concepto, sólo con cambios de idioma y de uso de mayúsculas y minúsculas.

Vale la pena mencionar que las agrupaciones en OpenRefine sólo se generan automáticamente en la sintaxis (o sea, el orden y la composición de caracteres que tiene como valor una celda) y aunque estos métodos son útiles para encontrar errores e inconsistencias, no son lo suficientemente avanzados para determinar agrupaciones a nivel semántico (o sea, el significado de un valor).

Estos métodos se pueden aplicar determinando cuántos grados de cercanía -en otras palabras, qué tan estrechas o flojas quieres encontrar las coincidencias-. Al graduar la cercanía encuentras coincidencias más o menos exactas. Por eso es importante que si bien, los algoritmos ayudan a automatizar la tarea de limpieza, un ojo y cerebro humano va administrando qué tan agresivas deben ser estas uniones para encontrar coincidencias, para evitar que asocie datos que no deberían ir juntos.

 

Conozcamos los algoritmos: En qué consisten estas  metodologías

Existen dos grandes metodologías para hacer clusters: la colisión clave y el vecino más cercano.  Open Refine utiliza diferentes variantes de estos dos métodos. Aquí te explicamos cuál es el proceso detrás de cada uno.

Sección 1: Métodos de colisión clave

Estos se basan en la idea de crear una representación alternativa de un valor inicial, el cual se convierte en una clave. Una clave contiene las partes más distintivas y significativas de un valor. OpenRefine va buscando en los demás registros qué otros valores se parecen a esta clave para agruparlos. El procesamiento requerido para este método no es muy complejo, por lo que presenta resultados muy rápidos. Este método tiene varias funciones diferentes que se pueden administrar en OpenRefine.

  • Fingerprint

Un método fácil y simple. Quita todos los espacios en blanco, cambia todos los caracteres a minúsculas, remueve toda la puntuación y normaliza cualquier caracter especial a una versión estándar. Luego, parte el texto y aplica espacios en blanco. Así encuentra las coincidencias.

  • N-Gram Fingerprint

Es similar al anterior, pero en vez de separar los caracteres por espacios en blanco, usa una cantidad a la enésima (n)  potencia de espacios que el usuario puede determinar.

  • Fingerprint Fonético

Este método no revisa los caracteres textuales sino su pronunciación y fonética: la manera en que esa palabra se pronunciaría, en vez de revisar similitudes en la escritura. Es muy útil para limpiar datos con nombres particulares, ya sea de lugares y personas. En ocasiones, los errores de registro se deben a que se registran a partir de la pronunciación. Sirve para encontrar similitudes entre sonidos parecidos pero que se escriben muy distinto como el sonido de “sh” y “x”, que en ocasiones son similares.

 

Sección 2: Vecino más cercano (Nearest neighbor)

Estos métodos proveen un parámetro o radio de aproximación alrededor de un valor o palabra, y va encontrando los grados de similitud entre éste y otros registros. Debido a los cálculos necesarios, estos métodos son más tardados en procesar.

  • Distancia Levenshtein

Este método se basa en el trabajo y proceso que implicaría cambiar a un registro A para que sea igual a un registro B. La distancia Levenshtein mide cuántas operaciones de edición -o cuántos pasos- le tomaría a alguien hacer que un dato se parezca al otro. Encuentra coincidencias entre los datos que están separados por la menor cantidad de pasos o cambios.

Por ejemplo, “Paris” y “paris” tienen una distancia de edición de 1, ya que solo se debe cambiar la P mayúscula a una minúscula. Sin embargo, “Nueva York” y “nuevayork” tienen una distancia de 3 pasos: dos sustituciones y un borrón.

  •  PPM (Prediction by Partial Matching)

Este método se utiliza para encontrar coincidencias en secuencias de ADN. Estima la similitud entre textos y determina su contenido idéntico. Por ejemplo, con el ADN encuentra similitud entre dos muestras para indicar un grado de familiaridad. Es común en este campo que no se busque una coincidencia exacta (que implicaría trabajar con muestras de ADN de la misma persona) sino encontrar un alto grado de coincidencia y familiaridad.

Si dos cadenas A y B son idénticas, al concatenar A+B debería de producirse muy poca diferencia. Pero si A y B son diferentes, al concatenar A+B se deberían producir diferencias muy dramáticas en la longitud de la cadena.

 


Paso a paso. Aplicando los clusters en OpenRefine

OpenRefine es un programa que corre a través de tu browser o navegador de internet. Para instalarlo, es necesario que lo descargues en este link y sigas las instrucciones para tu equipo. Usualmente, solo requiere que descargues la carpeta, la descomprimas y abras la aplicación.

OpenRefine debería abrir una ventana negra con algunos códigos y abrirse automáticamente en tu navegador de internet. Si no funciona, prueba ir a la dirección http://127.0.0.1:3333/

Vamos a hacer un ejemplo con un conjunto de datos sobre financistas a las elecciones del 2017-2018 en Estados Unidos que puedes descargar aquí.

 


 

Para subir el archivo, solo sigue los siguientes pasos:

Create project > Elegir archivo  (selecciona el archivo ZIP que descargaste) > Next

OpenRefine te mostrará una previsualización de tu conjunto de datos. En este caso, deberás desmarcar la opción >Parse Next para indicar que tu base de datos no tiene títulos de columna en la primera fila.

En >Project Name,  escribe “Financiamiento político_Estados Unidos 2017-2018” y da click a >Create project para guardar este proyecto.

 


 

En la columna 8 encontrarás el listado de financistas. Haciendo click en el triángulo a la par del título de esta columna, selecciona >Facet >Text facet para generar un filtro de texto.

 

A un lado, te aparecerán todos los registros de financistas en orden alfabético, con un número a la par que indica cuántas veces aparece este nombre en la base de datos. Haz click en el botón  >Cluster  para empezar a generar agrupaciones automáticas.

 

 

 

 

 


 

En la siguiente ventana puedes aplicar todos los métodos de clusters que te enseñamos. Puedes administrarlo cambiando las opciones  >Method,  >Keying Function o  >Distance Function.

 

 

 

 

 

 

Con estos controles podrás ir determinando qué tan agresivos son tus clusters. Independientemente del método que eligas, el proceso es el mismo. Al seleccionar el método y sus opciones, OpenRefine comenzará a procesar los datos para encontrar coincidencias y armarlas en un cluster o agrupación.

 


 

En este ejemplo podemos ver que el programa encontró 531 valores muy similares, escritos de 8 maneras diferentes para decir lo mismo: que un financista se llama “JEFF FLAKE FOR U.S SENATE, INC”. Como puedes ver, a la par de cada manera de escribir, OpenRefine te muestra cuántas veces aparece de esta manera el valor.

En este caso te muestra dos opciones. La primera, >Merge incluye una casilla que puedes seleccionar en caso de que sí quieras que OpenRefine una estos valores. En la segunda opción >New Cell Value, el programa te da la oportunidad de que edites y decidas de qué manera quieres que se reescriba este cluster. Así, irás administrando la agrupación valor por valor, decidiendo si quieres o no agrupar los valores con >Merge y la opción de escritura bajo la cual estos valores se agruparán con >New Cell Value

Con este ejemplo, si aceptas todas las agrupaciones de cluster que te permite el método >Key Collision >Fingerprint verás como la columna de financistas pasó de tener 5,664 opciones diferentes, a tener 5,136 registros diferentes. 528 valores menos que eran repetidos pero contenían errores gramaticales o de sintaxis que hacían que la computadora no los tomara como iguales.

Así, en estos sencillos pasos, OpenRefine editó los valores de 54,807 celdas que manualmente tomarían demasiado tiempo para limpiar y estandarizar.

 


 

Para finalizar, haz click en  >Export para descargar tu base de datos limpia en el formato que prefieras.Ya sea valores separados por coma, o por tabulaciones; formato para Excel o HTML, OpenRefine te permite escoger entre diversos formatos para descargar la versión limpia de tu base de datos.

 

Cuéntanos en qué casos puedes utilizar los clusters y OpenRefine para limpiar tus datos. Escríbenos a [email protected] o por twitter @escueladedatos y estaremos compartiendo algunos ejemplos de usos de esta herramienta. 


 

Flattr this!

]]>
http://es.schoolofdata.org/2018/05/03/algoritmos-y-clusters-encuentra-errores-y-limpialos-de-manera-facil-con-openrefine/feed/ 0 2486