Manipulación Avanzada de Datos con Python y Pandas
Clase 14 de 24 • Curso de ETL e ingesta de datos con Python
Contenido del curso
Técnicas Efectivas de Transformación de Datos
- 5
Lectura y Exploración de Archivos CSV con Pandas en Python
00:00 min - 6
Manejo de Archivos Excel con Pandas para Procesos ETL
00:00 min - 7
Ingesta de Datos desde APIs con Python
00:00 min - 8
Conexión y consulta de bases de datos en Python con SQLite3 y SQLAlchemy
00:00 min - 9
Series y DataFrames en Pandas: Diferencias y Usos Prácticos
00:00 min - 10
Métricas Clave en el Perfilado de Datos para Análisis de Calidad
00:00 min - 11

Limpieza de Datos en Python con Pandas
08:04 min - 12
Filtrado, Selección y Transformación de Datos con Pandas
00:00 min - 13
Agrupación y Resumen de Datos con Pandas
00:00 min - 14

Manipulación Avanzada de Datos con Python y Pandas
Viendo ahora
Carga de Datos y Proyecto Final
- 15
Exportación de DataFrames a CSV con Pandas paso a paso
00:00 min - 16
Gestión de Datos: Carga Completa vs. Carga Incremental en Python
00:00 min - 17
Partición de Datos en Archivos CSV con Pandas
00:00 min - 18

Carga Incremental de Datos en Archivos Excel con Python
05:10 min - 19

Importación de la Base de Datos Sakila en MySQL Workbench
04:52 min - 20

Transformaciones de Datos ETL con Python y MySQL
04:18 min - 21

Transformaciones de Datos con Python y SQL
13:38 min - 22

Buenas prácticas y errores comunes en procesos ETL
04:17 min - 23

Carga y Validación de Datos en Sakila ETL con Python y SQL
06:29 min - 24

Fundamentos de ETL con Python: Extracción, Transformación y Carga de Datos
01:34 min
¿Cómo aplicar técnicas avanzadas de manipulación de datos en Python?
La manipulación de datos es una habilidad fundamental para cualquier profesional que trabaje con grandes volúmenes de información. Con Python y sus bibliotecas potentes como Pandas, puedes llevar estas técnicas al siguiente nivel. En esta clase, descubrirás cómo aplicar transformaciones avanzadas utilizando funciones personalizadas, pivot tables, y diferentes métodos de 'join'. ¡Sumérgete en este fascinante mundo y descubre el poder de los datos!
¿Cómo leer y analizar múltiples archivos CSV?
Comencemos con una tarea básica pero crucial: leer archivos CSV. Para este ejemplo, trabajaremos con dos archivos CSV: uno con información de empleados y otro con datos de bonificaciones.
La estructura de ambos data frames puede visualizarse de la siguiente manera:
-
Empleados:
-
ID empleado
-
Nombre
-
Departamento
-
Salario
-
Fecha de ingreso
-
Bonificaciones:
-
ID empleado
-
Bonificación
Es esencial recordar que ambos archivos tienen una columna en común: el ID del empleado. Esta columna nos servirá para futuras operaciones de 'join' entre data frames.
import pandas as pd empleados_df = pd.read_csv('empleados.csv') bonificaciones_df = pd.read_csv('bonificaciones.csv') print(empleados_df.head()) print(bonificaciones_df.head())
¿Cómo usar funciones personalizadas con el método apply?
El método apply te permite aplicar funciones personalizadas a las columnas de un data frame. Empezaremos creando una función sencilla para calcular el salario anual multiplicando el salario mensual por doce.
def salario_anual(salario): return salario * 12 empleados_df['Salario Anual'] = empleados_df['Salario'].apply(salario_anual)
Un ejemplo más avanzado es calcular la antigüedad de un empleado basándose en la fecha de ingreso. Creamos una función para verificar si un empleado tiene más de cinco años de antigüedad.
from datetime import datetime def antiguedad_cinco_anos(fecha_ingreso): hoy = pd.to_datetime('today') antiguedad = (hoy - pd.to_datetime(fecha_ingreso)).days / 365 return antiguedad > 5 empleados_df['Antigüedad > 5 Años'] = empleados_df['Fecha de ingreso'].apply(antiguedad_cinco_anos)
¿Qué son y cómo usar las tablas pivote (Pivot Tables)?
Las tablas pivote te permiten reorganizar los datos para obtener información agregada. En este contexto, generaremos una tabla que muestre el salario promedio por departamento.
tabla_pivote = empleados_df.pivot_table(values='Salario', index='Departamento', aggfunc='mean') print(tabla_pivote)
¿Cómo integrar data frames usando Merge y Join?
Finalmente, exploraremos cómo combinar información de múltiples fuentes. Utilizaremos merge para combinar los archivos de empleados y bonificaciones usando el ID de empleado y el método 'left'.
df_merged = pd.merge(empleados_df, bonificaciones_df, on='ID empleado', how='left')
Podemos también configurar índices y realizar 'joins' adicionales usando la columna Departamento para integrar información de ubicaciones.
departamentos = {'Departamento': ['Ventas', 'IT', 'Recursos Humanos'], 'Ubicación': ['Madrid', 'Barcelona', 'Valencia']} df_departamentos = pd.DataFrame(departamentos).set_index('Departamento') df_combined = empleados_df.set_index('Departamento').join(df_departamentos)
Desafío práctico: ¿Cómo aplicar lo aprendido a un contexto real?
Ahora que entiendes cómo manipular data frames con técnicas avanzadas en Python, te lanzo un desafío. Supón que tienes datos de productos en una tienda. Crea una función que calcule el total de ventas multiplicando cantidad por precio, y otra que clasifique productos como baratos, medios o caros. Aplica el método apply para poner en práctica lo aprendido y comparte tus soluciones.
La manipulación de datos es un mundo con infinitas posibilidades y desafíos. ¡Sigue así, promoviendo y perfeccionando tus habilidades en este viaje extraordinario a través de los datos!