Want to create interactive content? It’s easy in Genially!

Get started free

Módulo 5 - Tema 1 - Pandas

EAD Recursos

Created on August 29, 2023

Start designing with a free template

Discover more than 1500 professional designs like these:

Branching Scenario Mission: Innovating for the Future

Piñata Challenge

Teaching Challenge: Transform Your Classroom

Frayer Model

Math Calculations

Interactive QR Code Generator

Interactive Scoreboard

Transcript

Módulo 5

Tema 1

Imagen tomada de: https://pandas.pydata.org

Introducción

Para empezar el módulo V conoceremos la biblioteca Pandas, la cual es una biblioteca de Python y se utiliza para trabajar con conjuntos de datos, ofreciendo múltiples funciones para analizar, limpiar, explorar y manipular dichos datos. El nombre "Pandas" hace referencia a los términos "Panel Data" y "Python Data Analysis"

¿Qué puedes hacer con Pandas?

Pandas ofrece estructuras de datos flexibles y herramientas para trabajar con conjuntos de datos de manera eficiente. Algunos de los usos más comunes de Pandas incluyen:

  1. Lectura y escritura de datos: Pandas puede leer y escribir datos en una variedad de formatos, lo cual facilita la importación y exportación de datos desde y hacia diferentes fuentes.
  2. Manipulación de datos: Pandas proporciona una amplia gama de funciones para limpiar y transformar datos. Por ejemplo, puedes renombrar columnas, filtrar filas, y llenar valores faltantes, entre muchas otras.

¿Qué puedes hacer con Pandas?

3. Indexación y selección: Pandas ofrece una poderosa capacidad para seleccionar y acceder a partes específicas de los datos.4. Agregación y resumen: Con Pandas, puedes realizar cálculos de agregación en tus datos, como sumas, promedios, medianas y otras estadísticas descriptivas.5. Manipulación de series de tiempo: Pandas proporciona funcionalidades para manejar fechas, tiempos y realizar análisis de tendencias temporales.

¿Qué puedes hacer con Pandas?

6. Fusionar y combinar datos: Puedes combinar conjuntos de datos utilizando operaciones de fusión y concatenación, lo cual es útil cuando necesitas combinar datos de diferentes fuentes o unir datos relacionados. 7. Visualización de datos: Aunque no es su función principal, Pandas puede generar gráficos básicos usando la integración con la biblioteca de visualización Matplotlib. 8. Análisis exploratorio de datos: Antes de realizar análisis más profundos, Pandas te permite explorar tus datos, detectar valores atípicos, resumir estadísticas clave y obtener una comprensión general de la distribución de tus datos.

Ejemplo: Fusionar y combinar datos

Imagen tomada de: https://absentdata.com/pandas/pandas-merge-and-append-tables/

¿Qué puedes hacer con Pandas?

9. Preparación de datos para modelado: Antes de entrenar modelos de apendizaje automático, con frecuencia es necesario preparar los datos. Pandas facilita la manipulación de los datos para que estén en el formato adecuado para el modelado. 10. Procesamiento de datos en lote: Pandas es eficiente en términos de rendimiento y permite procesar grandes conjuntos de datos en lote, lo que lo convierte en una herramienta esencial para tareas de análisis y procesamiento de datos a gran escala.

DataFrames

Un DataFrame de Pandas es una estructura de datos bidimensional que se utiliza para almacenar y manipular datos en forma de tablas. Es una de las principales estructuras que ofrece la biblioteca Pandas y está diseñada para manejar datos de manera eficiente y flexible, similar a cómo se haría en una hoja de cálculo o en una tabla de base de datos.

DataFrames en Pandas

Los DataFrames son una parte fundamental del ecosistema de Pandas y se utilizan ampliamente en el análisis y manipulación de datos en Python.

Ejemplos, Tutoriales y Documentación

Podrás encontrar tutoriales básicos y muchos ejemplos en el sitio oficial de Pandas, así como la referencia detallada de cada instrucción de la librería. Te recomendamos consultar en la documentación oficial la función que realiza cada instrucción en los siguientes ejemplos, y visitar los tutoriales si quieres conocer más sobre el tema.

Ejemplos:

https://pandas.pydata.org/docs/user_guide/index.html

Tutoriales:

https://pandas.pydata.org/docs/getting_started/intro_tutorials/index.html

Documentación:

https://pandas.pydata.org/docs/reference/index.html

Instrucciones

Cada uno de los siguientes ejemplos consiste en dos actividades:

  1. Captura el programa. Se proporciona un código en Python acompañado de una breve explicación del funcionamiento de sus instrucciones. Deberás capturar ese código en el intérprete de Python.
  2. Ejecuta el código. Observa el resultado que te aparece en la pantalla, y compáralo con la respuesta mostrada en la diapositiva. Verifica si ambos coinciden. En caso de no ser así, debes analizar cada línea y experimentar haciendo cambios en el programa para determinar la cause de las diferencias.

Ejemplo: DataFrame

Si lo capturaste correctamente, y lo ejecutas, tu resultado debería ser el siguiente:

Nota: Se puede crear un alias usando la palabra clave as. Por ejemplo, si escribes “import pandas as pd”, ahora la librería Pandas puede ser referenciada como “pd”

Series

Es la estructura más simple que proporciona Pandas, y se asemeja a una columna en una hoja de cálculo de Excel.

Ejemplo: Series

Si lo capturaste correctamente, y lo ejecutas, tu resultado debería ser el siguiente:

Ejemplo: Índices y series

Pandas te permite también accesar información específica en una serie usando la etiqueta del índice correspondiente. Por ejemplo, en nuestro anterior podríamos encontrar cuantos días tiene marzo específicamente escribiendo lo siguiente:

Podemos usar también los índices para obtener información específica de una lista de etiquetas. Por ejemplo, en el siguiente código, podemos preguntar exclusivamente por las ganancias de los dos primeros meses del año.

Ejemplo: Archivos y DataFrames

Con Pandas podemos leer fácilmente archivos en varios formatos, y guardarlos en forma tabular para procesarlos, Por ejemplo, el siguiente código da lectura al archivo “meses” con formato “csv”, en donde los datos se encuentran separados con comas, y cada renglón de la tabla se indica con una nueva línea. Este es un formato muy común, y es una de las opciones que puedes elegir en Excel para guardar tus archivos.

Nota: Todos los archivos csv citados en este módulo estarán a tu disposición en la carpeta “Recursos” dentro de la plataforma del diplomado.

Ejemplo: Cabeza y Cola.

Podemos ver también los últimos elementos del archivo mediante la instrucción tail(). Si no se especifica un valor entre los paréntesis, el valor por omisión será de 5.

Pandas nos proporciona herramientas para conocer nuestros datos. Por ejemplo, la instrucción head(10) nos mostrará los primeros 10 renglones del archivo “productividad.csv”

Nota: Todos los archivos csv citados en este módulo estarán a tu disposición en la carpeta “Recursos” dentro de la plataforma del diplomado.

Ejemplo: Información general.

Una forma rápida y simple de obtener información general acerca de nuestroconjunto de datos es utilizar la instrucción info(), la cual nos indica, para el archivo del ejemplo anterior, que tenemos 30 renglones en 4 columnas, y que la serie “Materiales” tiene 4 celdas vacías, indicando además que todos los datos son números enteros, con excepción de la última serie, en donde son flotantes.

Limpieza de datos

La limpieza de datos es fundamental en la Ciencia de Datos, porque los conjuntos de datos suelen contener errores, valores atípicos, datos faltantes y ruido. Estos problemas pueden afectar negativamente la calidad y confiabilidad de los resultados y modelos obtenidos a partir de dichos datos. A continuación, te mostraremos como usar Pandas para resolver algunos problemas tales como eliminar celdas vacías o corregir datos erróneos.

Ejemplo: Eliminando Celdas Vacías

El archivo “productividad.csv” contiene varios renglones con una celda vacía en la Serie etiquetada como “Materiales”, específicamente los renglones indexados con los números 3, 11, 17 y 22, cuyas celdas en dicha Serie están marcadas con el símbolo “NaN”, que en Inglés significa “Not a Number” y representan celdas sin un valor. La instrucción dropna() nos permitirá eliminar los renglones que contengan celdas de este tipo.

Ejemplo: Eliminando Celdas Vacías

Despúes

Antes

Luego de ejecutar el código de la diapositiva anterior, podemos observar que los renglones con celdas vacías han desaparecido.

Ejemplo: Reemplazando Celdas Vacías

En caso de que no se quiera eliminar por completo los renglones con celdas vacías, sino sustituir el valor nulo por otro valor, existen varias alternativas. La primera de ellas es sustituir el valor nulo por un valor específico. En este caso, se rellenan las celdas vacías (en los renglones 3 y 11) por el valor específico de 500 mediante el uso de la instrucción fillna() en la Serie etiquetada como “Materiales”, y se muestran los 15 primeros renglones de la tabla luego de la sustitución.

Ejemplo: Reemplazando Celdas Vacías

Otra alternativa para no eliminar por completo los renglones con celdas vacías, es sustituir el valor nulo por algún valor con significado estadístico, por ejemplo, el promedio. En este caso, se rellenan las celdas vacías (en los renglones 3 y 11) por el promedio de los valores de la columna etiquetada como “Materiales” mediante la función media(), y se usa este valor para sustituir las celdas vacías, y después mostrar los 15 primeros renglones de la tabla luego de la sustitución.

Ejemplo: Limpiando datos erróneos

Como puede observarse en la tabla siguiente, que muestra los 10 primeros renglones, aún después de los cambios que se aplicaron en nuestro último ejemplo (sustituyendo celdas vacías por el promedio de la serie), sigue habiendo problemas. En el renglón 6 puede verse que aparecen 16 horas de trabajo, cuando la jornada laboral para este caso tiene un máximo de 8 horas.

Ejemplo: Limpiando datos erróneos

Una manera de resolver este problema es modificar uno por uno cada uno de los errores en los datos, pero esto podría llevar mucho tiempo. Una mejor solución es aplicar un ciclo que imponga un criterio de sustitución, en este caso, que exceda del límite de tiempo de la jornada laboral de 8 horas, en cuyo caso, será sustituido por el valor máximo de ocho. Después de ejecutar el código, el renglón 6 ha sido corregido, al igual que cualquier otro caso similar en el DataFrame.

Ejemplo: Graficando el DataFrame

Generar una gráfica basada en los datos almacenados en un DataFrame es muy simple. En nuestro caso, luego de realizar el´último ejemplo, tenemos almacenada la tabla en el DataFrame llamado “df”, y basta capturar el código siguiente:

Ejemplo: Graficando el DataFrame

El gráfico generado por el código anterior se muestra a continuación. Existen muchas formas de mejorar la presentación visual, y se estudiarán algunas de ellas en el Tema 3 de este módulo. Sin embargo, la idea central es observar que el uso de Pandas facilita en gran medida el ordenar los datos para que sean procesados de múltiples maneras por las herramientas de la Ciencia de Datos.

Recomendación Bibliográfica

Encontrarás una magnífica fuente de ejemplos del uso de Pandas en el texto de libre acceso “Python for Data Analysis”. Podrás consultar el código abierto de este libro en el siguiente enlace:

https://wesmckinney.com/book/