read

En este post haré una recomendación de una herramienta para visualizar datos usando directamente la consola: VisiData es un CLI open source para poder visualizar datos mediante un spreadsheet.

A la hora de leer archivos csv (u otros tipos de archivos de datos si vamos al caso) es muy común usar librerías como pandas, o a veces tener que recurrir a scripts con comandos de bash (como sed, awk, sort, uniq etc.) para hacer summaries y demás. Visidata viene a dar una interfaz ligera por terminal para esto.

Para abrir un csv basta con instalar visidata (pip install visidata) y usar el comando: vd path/to/file.csv (lee otros archivos también, incluso lee directamente archivos comprimidos via gzip).

El spreadsheet es por consola, se puede mover con las flechas de dirección o con h, j, k, l (i.e. Vim style). Se sale con gq (o Ctrl+Q para hacer force quit). Y se puede acceder al help con Ctrl+H. Con Alt+<letra subrayada> se accede al menu superior.

Con [ y ] (seleccionando una columna) se hace un ordenamiento de esa columna (por defecto las columnas son de texto, se las puede convertir en numéricas con # o en flotantes con %).

Seleccionando una columna y haciendo Shift+F se hace una agrupación de dicha columna y un conteo de valores únicos, devolviendo un histograma y un porcentaje.

Con Shift+I se puede hacer un summary de todas las columnas (similar al describe() de un dataframe de Pandas.

Con Shift+S se muestra un listado de todas las hojas (y/o subhojas creadas por comandos como el Shift+F) abiertas, para moverse entre estas. Para volver a la hoja anterior es con Ctrl+^.

Estos son algunos de los casos para que uso visidata. Existen muchas más opciones para hacer incluso cosas más complejas, pero en esos casos ya derivo a pandas directamente. Sin embargo, para un scan rápido, visidata probó ser muy efectivo.

Blog Logo

Cristian Cardellino


Published

Image

Cristian Cardellino

Notes of a Computer Scientist

Back to Home