Introducción a D-Tale

Entrada actualizada el 28 de Marzo para reflejar los cambios de la versión 1.8.0 de la librería.

Logo de D-Tale. Es muy dinámico.
Logo de D-Tale

D-Tale es una librería de reciente creación (finales de febrero 2020) que nos permite visualizar un DataFrame de Pandas. Lo que hace D-Tale es generar una interfaz gráfica interactiva en la que podemos definir cómo queremos que se vean los datos y hacer un análisis exploratorio de datos a nuestro gusto.

Puedes ver cómo funciona D-Tale en directo en este enlace. Las imágenes de este artículo han sido generadas usando ese ejemplo y usando datos propios que puedes descargar aquí.

¿Cómo ejecutarlo?

Primero hay que instalarlo con este comando:

pip install --upgrade dtale

Necesitamos tener una instancia de Python abierta para ejecutarlo, por lo tanto no podremos compartirlo fácilmente como lo hacíamos con Pandas Profiling y siempre para utilizarlo nos hará falta un intérprete de Python abierto. Como es una librería muy nueva, es posible que esto cambie con versiones posteriores y podamos exportar en un único archivo html ejecutable desde cualquier navegador web moderno.

Este es el código para lanzar en local la aplicación interactiva de D-Tale:

import dtale
import pandas as pd
df = pd.read_csv(‘data.csv’)
d = dtale.show(df)
d.open_browser()

Así de simple, solo 5 líneas de código para mostrar un dataset con esta herramienta. Ahora vamos a ver todo lo que D-Tale puede hacer por nosotros desde su interfaz gráfica. Tengamos en cuenta que es una librería recién salida del horno (finales de febrero de 2020), probablemente en unos meses habrán nuevas funcionalidades muy interesantes.

Funcionalidades de D-Tale

Para empezar lo que hace D-Tale es enseñarnos los datos de la misma forma que lo haría pandas. La única diferencia es el menú que tiene en la esquina superior izquierda que nos permite hacer muchas cosas con los datos como veremos más adelante. Un punto interesante es que al lado de ese menú nos muestra el número de columnas y filas que tiene nuestro dataset.

Visualización de un dataset con D-Tale

Si hacemos clic sobre cualquiera de los títulos de las columnas, se abre un menú desplegable que nos da opciones para ordenar los datos y mostrarlos exactamente como queramos. Os recomiendo que probéis vosotros mismos cómo funciona cada botón.

Las opciones más interesantes que podemos encontrar en este menú son Describe que nos muestra un análisis estadístico de la columna seleccionada y Column Analysis que nos muestra un histograma de la columna seleccionada.

D-Tale análisis estadístico de una variable
Histograma de una variable generado con D-Tale

Con la opción Formats podemos definir como se muestran los números (cantidad de decimales, separador de miles, números negativos en rojo, …)

Dando formato a números con D-Tale

Finalmente podemos filtrar los datos de cada columna con la última opción, podemos hacer que solo se muestren los valores mayores o menores que un número, que solo se muestren los valores contenidos dentro de un rango, o que solo se muestren las filas que tengan un valor concreto para esa columna.

Filtrando números en las columnas

En el menú principal de D-Tale encontrarás todas las opciones disponibles en D-Tale. Aquí es donde la está toda la magia de D-Tale.

Menú principal de D-Tale

Veamos qué hace cada opción del menú. Empecemos por Describe. Se trata de la misma opción que podemos acceder desde los títulos de las columnas para ver un análisis estadístico de cada una de ellas.

Con la opción Filter, podemos filtrar los datos y solo mostrar las filas que cumplan unas ciertas condiciones que queramos. Para operaciones de filtrado simples, es más fácil utilizar el filtrado de las columnas descrito anteriormente. Para operaciones de filtrado más complejas, podemos utilizar esta herramienta. Tenemos que escribir las reglas de filtrado según el código que definen en la parte derecha.

D-Tale interfaz para filtrar datos

Con Build Column podemos generar nuevas columnas, por ejemplo definimos una nueva columna que sea la suma de otras dos.

D-Tale generar una columna que sea la suma de otras dos

Con Correlations nos mostrará cómo de correlacionadas están las variables entre ellas.

D-Tale análisis de correlaciones

En la opción Charts podremos generar los gráficos que queramos entre los disponibles (Línea, Barras, Dispersión (Puntos según coordenadas X e Y), Circular, Wordcloud (nube de palabras), Heatmap (mapa de calor), Dispersión 3D, y superficie.

gráfico generado con D-Tale

Podemos definir qué variables queremos que nos muestre en cada gráfico y varios parámetros más específicos para cada gráfico como los valores máximos y mínimos que queremos que se muestren.

Finalmente, una de las opciones más llamativas es el heatmap. Nos muestra colores en la tabla de datos según el valor de cada celda.

Heatmap generado con D-Tale

Acabamos el artículo aquí. Nos queda esperar a ver cómo evoluciona esta librería y si se populariza entre la comunidad de Data Science. Sin duda tiene un futuro prometedor.

Albert Sanchez Lafuente

Estudié Ingenieria Industrial en la UPC. Continué mi formación en inteligencia artificial junto a la asociación Saturdays.AI de la que he formado parte del equipo de Barcelona desde sus inicios.