Módulo 2. Manipulación de Datos Con Python
Módulo 2. Manipulación de Datos Con Python
Video de inmersión
[1]
Se puede ejecutar desde un navegador como Chrome o Firefox.
Figura 1. Anaconda
Justificación
Tema 2: Importación de datos crudos y chequeos básicos del dataset
El nombre del archivo (entre comillas y con la extensión). Puede incluir la ruta
completa donde está ubicado.
El carácter que separa las columnas es, por defecto, la coma, pero podría ser
otro como punto y coma o una barra vertical (el argumento es opcional).
Si el archivo tiene un encabezado con el nombre de las variables o campos, la
opción header (el argumento es opcional).
Además, podemos usar previamente la función os.chdir() para fijar una ruta en la
que vamos a trabajar. Allí podrán estar ubicados los inputs y outputs.
Corremos las celdas de código presionando Ctrl+Enter y una vez que ya tenemos
los archivos cargados en memoria, podemos usarlos dentro del notebook. Uno de
los primeros pasos es verificar que se haya importado correctamente. Hay varias
maneras de chequearlo, por ejemplo, si escribimos el nombre del dataframe en una
celda y la ejecutamos, vamos a ver impresas las primeras líneas.
Head sirve para importar datos de un archivo de texto delimitado por comas.
Shape sirve para mostrar la cantidad de filas y columnas que tiene un dataframe.
Read_csv sirve para mostrar qué tipo de variable se está almacenando en cada columna de un
dataframe.
Justificación
Tema 3: Filtros de columnas y filas, integración de datos (join, append),
transposición
Ahora vamos a ver algunas de las operaciones más comunes con tablas, como los
filtros de filas o columnas, la integración de distintas tablas (una debajo de otra o
agregando nuevas columnas usando campos en común) y la reestructuración de las
filas y columnas de forma que sean más fáciles de procesar (transposición).
Figura 10. Transponemos el dataframe para que sea más fácil de procesar
También podemos renombrar la columna country a país. Es una buena práctica que
los nombres de las columnas estén en minúscula y que las palabras estén
separadas por guión bajo y sin usar espacios en blanco. Eso hace que nuestra tabla
sea más fácil de usar.
Figura 13. Ordenamos las filas del dataframe por las variables país y año
Verdadero.
Falso.
Justificación
Tema 4. Agregaciones
También usamos la opción «as_index = False» para que los campos por los que
agregamos sean variables y no índices de la tabla. Dentro de agg vamos a listar las
medidas que queremos (crecimiento_pbi) y las métricas (en este caso mean, la
media). Se podrían agregar más operaciones para una misma variable
escribiéndolas entre corchetes y separadas por comas (ej. [“mean”, “std”]).
Falso.
Justificación
En la práctica, puede pasar que se hayan generado datos con un criterio que no es
el que nos sirve para la pregunta que debemos responder. Para este proceso es muy
importante el conocimiento de dominio, debemos saber cómo y con qué objetos se
generaron los datos.
Saber cómo se generaron los datos nos va a ayudar a entender cualquier potencial
problema de calidad. Algunas de las fuentes con las que podremos trabajar son: con
datos provenientes de procesos de ingreso manual (formularios), de sistemas
transaccionales o de sensores.
El conocimiento especializado del campo sobre el cual analizamos
los datos se conoce como conocimiento de inclusión.
Verdadero.
Falso.
Justificación
Tema 2: Valores faltantes (missings) e inconsistencias
Por otro lado, también es necesario tener en cuenta qué porcentaje de las
observaciones totales tienen valores faltantes para definir si es razonable
descartarlas o buscar corregirlo de alguna forma.
Es importante también saber si los valores faltantes son aleatorios o siguen algún
patrón (si están correlacionados con alguna otra variable).
Figura 22. Eliminamos las filas en las que aparece por lo menos un missing
Inconsistencias
Para las variables de texto necesitamos entender cuáles son sus valores únicos y
definir si existen duplicados. La presencia de estos puede hacer que tomemos como
entidades distintas (en este caso entidades geográficas) a aquellas que son las
mismas, pero están escritas de distinta forma.
Errores o
diferencias de “BuenosAires” “Buenos Aires”
tipeo
Errores de
codificación “C¢rdoba” “Córdoba”
(encoding)
Mayúsculas/m
“CAPITAL FEDERAL” “Capital Federal”
inúsculas
Fuente: elaboración propia.
Si son pocos casos pueden corregirse manualmente. De lo contrario, es necesario
aplicar otras reglas como las de similitud de cadenas de texto. Ellas pueden
identificar el grado de cercanía entre palabras o frases muy parecidas (por ejemplo:
CABA y C.A.B.A). En ambos escenarios, es necesario definir el costo-beneficio de
hacer estas correcciones.
Verdadero.
Falso.
Justificación
Tema 3: Valores atípicos/extremos (outliers)
Otro tipo de valores que es necesario identificar son los atípicos o extremos
(outliers). Estos son valores inusuales que pueden darse por un comportamiento
muy distinto de algunas de las unidades de análisis o por error en los datos. Para
poder saber qué constituye un outlier es necesario comprender la variable y cuándo
sus valores tienen sentido. Por ejemplo, en variables como edad o altura es más fácil
identificar outliers por errores (el rango de valores lógicos es limitado), mientras que,
en variables como el ingreso, algunos valores pueden ser atípicos pero factibles.
En nuestro caso, vamos a analizar outliers respecto de cada variable por separado,
es decir, outliers univariados. Esto representa valores atípicos dentro de un campo
sin considerar el comportamiento del resto. Otra posibilidad es identificar estos
valores de forma conjunta entre distintas variables.
Figura 25. Outliers
Fuente: Kozak, M.; Krzanowski, W.; Tartanus, M. (2012). Use of the correlation
coefficient in agricultural sciences: Problems, pitfalls and how to deal with them.
Anais da Academia Brasileira de Ciências Recuperado de
.https://www.researchgate.net/figure/A-bivariate-outlier-a-value-that-is-not-atypical-
for-the-distributions-of-variables-x_fig2_233838897
Descripción de la figura 25: en este caso, el punto de arriba a la izquierda no es un
outlier en términos de X o de Y por separado. Sí lo es en términos de ambas de
forma conjunta.
Para identificar outliers univariados existen distintas opciones. Una muy frecuente es
calcular la variable estandarizada, es decir, la variable que resulta de restar la
media a la original y dividirla por el desvío estándar. Una vez computada, se puede
definir un umbral a partir del cual los valores son atípicos. Por ejemplo, las
observaciones que se ubican a más de 3 desvíos estándar de la media (en ambos
sentidos). Otra opción es basarse en los percentiles: por ejemplo, tomar el 1% o el
5% de los registros con valores más altos o más bajos. O bien, puede definirse un
umbral fijo a partir del cual los valores son outliers (se podría usar para los ingresos,
por ejemplo).
Muchas veces, los outliers pueden observarse por casos como episodios de crisis
económicas o políticas (por ejemplo, el año 2001 en Argentina), desastres naturales
(sequías, sismos y huracanes) o eventos muy improbables (por ejemplo, la
pandemia del COVID-19).
Figura 26, 27 y 28. Identificamos outliers de formas distintas
Errores.
Mejoras.
Justificación
Tema 4: Corrección e imputación
Como señalamos, una vez que identificamos los valores atípicos y faltantes,
debemos definir cómo vamos a tratarlos para que no afecten las conclusiones de
nuestro análisis. Si bien una de las opciones es eliminar esos registros de nuestro
conjunto de datos, existen otras alternativas.
Podemos reemplazar el valor de los registros faltantes por otros basados en una
regla: esto se conoce como imputación. Frecuentemente, esta puede ser una
estadística descriptiva del resto de los valores válidos de ese campo. Por ejemplo,
los valores faltantes: si tuviéramos datos de empresas y en algunas de ellas faltaran
los datos de facturación, podríamos imputarles el promedio de la facturación de las
empresas para las que sí tienen ese dato. Otra opción podría ser computar esa
descriptiva por distintos grupos. Podríamos imputar a los missings la facturación
promedio de una empresa en una industria en particular.
Para los valores atípicos, una opción es sustituirlos por un valor fijo que corresponda
a un percentil: por ejemplo, a todas las observaciones por encima del percentil 99 de
una variable, reemplazarlas por el valor del percentil 99. Si bien esto elimina el
outlier para esa variable, podría generar un caso que sea atípico en su combinación
con otras variables.
Video de habilidades
¿Qué problemas de calidad pueden tener? ¿Podrían afectar el análisis en una
etapa posterior? ¿Qué tratamientos podrían requerir? ¿Cuáles serían las
ventajas y desventajas?
Si querés, podés pausar el video y luego volver aquí para ver la resolución.
☰ Resolución
Este conjunto de datos, como cualquier otro, podría tener distintos problemas de
calidad. Los más generales pueden ser inconsistencias, errores, valores faltantes o
valores atípicos.
También vimos que hay distintos tratamientos que podemos darle a estos valores:
por ejemplo, excluirlos del análisis o reemplazarlos por otros valores. Obviamente
tenemos que tener conocimiento y criterio suficiente para saber en qué casos tiene
sentido cada uno de ellos. Cada una de estas soluciones tiene costos y beneficios:
por ejemplo, eliminar registros puede evitar que distorsionen el análisis, pero
también podría causar que perdamos información relevante en otras variables.
Cierre
En este módulo aprendimos sobre una etapa clave en todos los proyectos de datos:
el preprocesamiento. Estudiamos la forma de manipularlos para llevarlos del formato
original de los datos crudos a un formato que nos facilite su análisis. Para esto,
trabajamos en el entorno de Jupyter y usamos las librerías de Python Numpy y
Pandas.
Estas herramientas nos van a servir para las próximas etapas del flujo de trabajo: la
visualización y el análisis exploratorio de los datos.
Glosario
Glosario Interactivo
Buscar...
Accionable
A
Elemento que permitirá a una organización poder tomar decisiones informadas para
Accionable
alcanzar sus objetivos.
Análisis exploratorio de los datos
Atributos preatentivos
C
Calidad de datos
Campos calculados
Chartjunk
Ciclo analítico
Color
Condensar información
Conocimiento de dominio
ANTERIOR SIGUIENTE
Referencias
Kozak, M.; Krzanowski, W.; Tartanus, M. (2012). Use of the correlation coefficient
in agricultural sciences: Problems, pitfalls and how to deal with them. Anais da
Academia Brasileira de Ciências Recuperado de
.https://www.researchgate.net/figure/A-bivariate-outlier-a-value-that-is-not-atypical-
for-the-distributions-of-variables-x_fig2_233838897