¡Hola! Todos los trabajadores pueden identificarse con problemas comunes. Uno de ellos es el trabajo repetitivo en Excel. Especialmente tareas que requieren ingresar datos contables en un sistema ERP, donde hay muchos números y la precisión es crucial, pueden llevar mucho tiempo y tener un alto riesgo de errores. Yo también sufrí con este dolor, pero creé mi propio script de automatización en Python pandas que redujo drásticamente mi tiempo de trabajo. Ahora, tareas que solían tardar horas se completan en un instante, lo que me brinda más tiempo para concentrarme en lo que me gusta después de terminar rápidamente las tareas contables que no disfruto.

No se limita solo a las tareas contables, ¿verdad? No. De hecho, pandas es una herramienta mágica que puede ser utilizada en cualquier trabajo basado en datos. La cantidad de uso de Excel puede variar entre campos, pero es raro encontrar un lugar que no lo use en absoluto. Por lo tanto, herramientas como Excel son esenciales en el trabajo moderno, y me atrevo a decir que las aplicaciones de pandas son infinitas.

Ahora, profundicemos en cómo pandas puede hacer que tu trabajo sea más eficiente en diversas situaciones.


pandas, ¿qué es?

pandas es una biblioteca de código abierto en Python diseñada para manejar y analizar datos de manera eficiente. Está especialmente optimizada para trabajar con datos en forma de tabla (hojas de cálculo, tablas de bases de datos, etc.) y ofrece un soporte muy potente para leer y escribir archivos de Excel (.xls, .xlsx). El núcleo de pandas es una estructura de datos llamada DataFrame, que te permite manipular fácilmente datos tabulares organizados en filas y columnas como una hoja de Excel.


pandas, ¿dónde más se puede utilizar además de en tareas contables?

Como mi experiencia lo demuestra, además del procesamiento de datos contables, pandas actúa como una herramienta poderosa de automatización en diversas áreas de trabajo.

pandas automating spreadsheet for worker

1. Limpieza y preprocesamiento de datos

Los datos suelen llegar sucios. ¡Valores faltantes, filas duplicadas, tipos de datos incorrectos, etc.! pandas ofrece funcionalidades excepcionales para resolver estos problemas.

  • Tratamiento de valores faltantes: Puedes buscar celdas vacías (NaN, None, etc.) y llenarlas con un valor específico (Ej: fillna()), o eliminar esa fila/columna (dropna()).

    • Caso de uso: Rellenar con 'no respondido' los elementos no respondidos en los datos de encuestas de clientes o filtrar datos de clientes con información obligatoria faltante para crear una lista de solicitudes de verificación.
  • Eliminación de datos duplicados: Encuentra y elimina filas duplicadas para mantener la integridad de los datos (drop_duplicates()).

    • Caso de uso: Filtrar direcciones de correo electrónico duplicadas al registrarse o eliminar ítems de inventario registrados múltiples veces para obtener un conteo exacto de existencias.
  • Conversión de tipos de datos: Convierte tipos de datos incorrectos, por ejemplo, de texto a número, o de fecha a texto, en el formato correcto (Ej: astype(), to_datetime()).

    • Caso de uso: Convertir datos de ingresos almacenados como texto a números para realizar sumas, o cambiar fechas en formato '20230101' a un formato de fecha real para facilitar el análisis por periodos.
  • Detección y tratamiento de outliers: Utiliza métodos estadísticos (IQR, Z-score, etc.) para identificar outliers en los datos y eliminarlos o sustituirlos por otros valores.

    • Caso de uso: Detectar transacciones anormales que se desvían significativamente del precio medio de venta para investigar fraudes o errores, o identificar cambios abruptos en datos de sensores para detectar problemas en equipos.
  • Uniformidad en el formato de datos: Cuando los datos provienen de varias fuentes con formatos diferentes, puedes unificarlos en un formato específico (Ej: unificar formatos de fecha).

    • Caso de uso: Cuando algunos archivos registran fechas como 'YYYY-MM-DD' y otros como 'MM/DD/YYYY', estandarízalos a 'YYYY-MM-DD' para integrar y analizar los datos.

2. Integración y combinación de datos

Cuando necesitas combinar datos dispersos en diferentes archivos o bases de datos para analizarlos, pandas es muy útil.

  • Integración de múltiples archivos: Puedes integrar varios archivos de Excel o CSV con la misma estructura en un único DataFrame (Ej: pd.concat()).

    • Caso de uso: Cargar archivos de informes de ventas por sucursal generados mensualmente a la vez para agregar el total de ventas anuales o integrar archivos de registros acumulados diariamente para analizar el tráfico semanal/mensual.
  • Combinación de datos: Puedes combinar diferentes DataFrames en función de una clave (columna) para generar nueva información (Ej: pd.merge()). (Similar al JOIN en SQL)

    • Caso de uso: Combinar archivos 'información básica del cliente' y 'historial de compras del cliente' basados en el ID del cliente para analizar el total de compras por cliente o las categorías de productos preferidas. También puedes combinar 'información de empleados' y 'información salarial' basadas en el ID de empleado para generar automáticamente recibos de pago individuales.
  • Reestructuración de datos: Puedes crear tablas dinámicas (pivot_table()) o transformar datos de formato largo (melt()) a formato ancho (pivot()) según el analisis deseado.

    • Caso de uso: Crear una tabla dinámica de datos de ventas de productos organizados por mes, poniendo 'producto' en las filas y 'mes' en las columnas para visualizar las tendencias de ventas por mes, o reestructurar datos de encuestas para facilitar su análisis.

3. Análisis de datos y automatización de informes

Automatiza análisis repetitivos y generación de informes ahorrando tiempo y esfuerzo.

  • Generación de estadísticas resumidas: Utiliza diversas funciones estadísticas como describe(), mean(), sum(), count() para resumir rápidamente los datos y extraer indicadores clave.

    • Caso de uso: Obtener rápidamente el promedio, el mínimo/máximo y la desviación estándar de las ventas totales para resumir el rendimiento comercial o calcular la puntuación media de las encuestas para evaluar la satisfacción.
  • Análisis por grupos: Utiliza groupby() para agrupar datos según criterios específicos (Ej: por región, por producto) y realizar agregaciones (suma, promedio, conteo, etc.) para cada grupo.

    • Caso de uso: Agregar automáticamente las ventas totales por sucursal, calcular el rendimiento promedio por categoría de producto, o el gasto de cada departamento para incluirlo en informes.
  • Análisis de datos temporales: Maneja datos de fecha/hora de manera eficiente para analizar tendencias mensuales, trimestrales y calcular promedios móviles.

    • Caso de uso: Calcular la tasa de cambio diaria de los precios de acciones o analizar las tendencias diarias de ventas de productos para proporcionar datos básicos para un modelo que prediga las ventas futuras.
  • Filtrado y selección condicional: Puedes extraer solo los datos que cumplen ciertas condiciones para estrechar el área de análisis.

    • Caso de uso: Consultar solo los datos de un periodo específico (Ej: último trimestre) o filtrar solo transacciones que excedan un monto específico (Ej: más de un millón de won) para extraer una lista de clientes VIP.
  • Generación de informes personalizados: Utiliza el DataFrame analizado para generar automáticamente informes en el formato deseado (Excel, CSV, PDF, etc.), incluyendo gráficos si es necesario.

    • Caso de uso: Configurar un sistema que analice automáticamente los datos de ventas de la semana pasada cada lunes por la mañana y genere un archivo Excel de 'Informe de ventas semanal', enviándolo por correo electrónico a los departamentos relacionados.

Conclusión

pandas va más allá de ser simplemente una herramienta que reemplaza el trabajo en Excel, convirtiéndose en una poderosa arma para entender y utilizar los datos. Alejándote de tareas de datos repetitivas y aburridas, espero que aproveches la oportunidad de maximizar tu eficiencia laboral a través de pandas y concentrarte en tareas más importantes.

En la próxima publicación, planeo explorar métodos específicos para leer y escribir archivos de Excel utilizando pandas y diversas opciones. ¡Esperen ansiosamente!