Creación y manejo de Pivot Tables en pandas

Clase 20 de 32Curso de Python para Ciencia de Datos

Resumen

¿Qué son las Pivot Tables en pandas?

Las Pivot Tables son una herramienta poderosa y versátil que nos permite resumir y reorganizar columnas de datos crudos de un DataFrame de pandas. Gracias a ellas, podemos realizar cálculos estadísticos comunes como sumas, conteos y promedios, ayudándonos a descubrir patrones ocultos y obtener insights valiosos de nuestros datos originales.

Al utilizar Pivot Tables, puedes:

  • Resumir y reorganizar los datos.
  • Identificar patrones.
  • Comparar subgrupos de datos.

¿Cómo crear una Pivot Table?

Para crear una Pivot Table en pandas, debes seguir un proceso estructurado, especificando varios parámetros clave. Veamos cómo hacerlo paso a paso.

¿Cómo pasar la información al DataFrame?

El primer paso es definir el DataFrame que vamos a utilizar. Luego, especificaremos las columnas y los índices que deseamos tener en nuestra Pivot Table.

  1. DataFrame inicial: Debemos tener un DataFrame con los datos que queremos analizar.
  2. Columna de valores: Definimos la columna cuyo cálculo estadístico queremos realizar (por ejemplo, 'cantidad').
  3. Índice: En lugar de usar un índice posicional (como 0, 1, 2), se puede utilizar una de las columnas como índice. Por ejemplo, 'country'.
  4. Columnas: Incluir las columnas que deseas evaluar, como los 'stock codes'.
  5. Función de cálculo: Determina la función que aplicarás, como la suma, para mostrar las sumatorias totales en el índice.
import pandas as pd

# Crear una pivot table
pivot_table = pd.pivot_table(
    data_frame, 
    values='cantidad', 
    index='country', 
    columns='stock code', 
    aggfunc='sum'
)

¿Cómo modificar las funciones agregadas?

Se pueden personalizar las funciones agregadas de nuestra Pivot Table según la necesidad del análisis.

En lugar de sumar, podemos calcular la media, por ejemplo:

# Modificar para utilizar la función de media
pivot_table = pd.pivot_table(
    data_frame, 
    values='cantidad', 
    index='country', 
    columns='stock code', 
    aggfunc='mean'
)

¿Cómo apilar y desapilar datos en DataFrames?

El apilamiento y desapilamiento de datos son técnicas útiles cuando necesitas cambiar la estructura de tu DataFrame para análisis más profundos o para ajustar la presentación de la información.

¿Qué es el método stack en pandas?

El método stack convierte el índice de un DataFrame en una columna, apilando los datos.

# Usar el método stack para apilar datos
stacked_df = original_df.stack()

¿Qué es el método unstack en pandas?

El unstack hace el proceso contrario al stack, transformando columnas en índices.

# Usar el método unstack para desapilar datos
unstacked_df = stacked_df.unstack()

Un paso más allá con Pivot Tables

Las Pivot Tables y los métodos de apilar y desapilar ofrecen posibilidades casi ilimitadas para el análisis de datos. Ahora no solo estás limitado a índices posicionales; puedes modificar y utilizar columnas para un análisis más profundo y personalizado.

¡Explora estas funcionalidades y descubre cómo pueden aportar valor en tus proyectos actuales o futuros! Si tienes alguna idea de cómo aplicarás estos conceptos en el análisis de retail o en otro tipo de proyectos, comparte tus reflexiones. Estaré encantado de leerte y seguir aprendiendo juntos.