Introducción a Ciencia de Datos con Python

Gustavo Andres Brey
Ingenia, Architectural Journeys
3 min readAug 18, 2018

Una de a las cosas interesantes que estuve haciendo este año, tiene que ver con una materia que cree y dicté en la Universidad del CEMA, de Introducción al Pensamiento Computacional, básicamente es la formalización de lo que vengo evangelizando hace tiempo con varias charlas que di, conferencias como KidsConf que armamos y obviamente la TED, sobre incluir la programación como conocimiento en las escuelas primarias. El Pensamiento computacional es un nuevo método de resolución de problemas que finaliza con el diseño de un algoritmo. El lenguaje que decidí utilizar fue Python, asi que lo tuve que aprender un día antes de enseñarlo (quien me conoce sabe que es verdad). El objetivo de este post es de contarles sobre los primeros pasos en Ciencia de Datos con Python.

Python, aparte de ser un lenguaje extremadamente expresivo, posee muchísimas librerías que facilitan el proceso completo para el análisis de información, tanto para la obtención de datos, el cleaning, refinamiento, generación de modelos (machine learning) y visualización. Eso hace una herramienta muy poderosa, en mi caso particular, luego de haber utilizado python para dar clases, dejé de usar el excel. Tengo mi escritorio Jupyter listo para hacer mis análisis de datos por más sencillos que sean.

Acá les voy a dejar la presentación que dí como parte de los Beer & Learn los viernes por la tarde.

A modo de resumen, el enfoque que le dí a la clase y charla fue repasar las siguientes secciones.

MANEJO DE ARCHIVOS Y DATASETS

De donde sacamos los datos? Pueden venir en diferentes formas, Excels, CSVs, APIs, TXT, BBDD, etc. La librería Pandas permite leer información de diferentes formatos y orígenes.

DATAFRAMES

Los Dataframes son la abstracción que permite hacer toda la magia de refinamiento de datos, el procesamiento, agrupamiento, etc. Posee una serie de funciones extremadamente sencillas de utilizar aceleran el trabajo. Es un RAW data pero que se puede entrar por fila y por columna.

DATA CLEANING

Los Dataframes poseen muchas funciones para procesar la información, transformar tipos, llenar datos faltantes, droppear información, preparar información a procesar, agregar nueva información, los que se les ocurra, existe alguna variante que permiten entre Pandas y Numpy.

PLOTTING

Para Python existen librerías para generar visualizaciones muy potentes (realmente no fue lo más distintivo que vi pero va muy bien), existen muchisimos tipos de graficos que pueden generarse directamente desde el Dataframe, o pasando estructuras de datos, con muy código, generas un gráfico de barras, torta, scatters, etc.

PREDICTIVE MODELS

Y por último armamos algunos modelos predictivos utilizando otra librería muy interesante de Python llamada scikit-learn es muy simple y eficiente para data mining y analysis, construida sobre NumPy, SciPy y matplotlib. Tiene soporte para Clasification, Regression, Clustering, Dimensionality Reduction, Model Selection y Preprocessing

En la presentación más abajo se ven los 3 modelos predictivos, Decission Tree, Clustering K-Mean y Linear Regression.

Dentro de la presentación hay varios ejemplos y casos prácticos para hacer. Hay links a la plataforma Jupyter, no necesitan instalar absolutamente nada.

--

--

Gustavo Andres Brey
Ingenia, Architectural Journeys

Ingeniero, Padre, Ingenia Co-Founder, Profesor UTN y UCEMA, Ex NERD@GOV, Casado con la nerd mas linda. Founder KidsConf, ArqConf y DevopsConf. TEDx Speaker