Introduction
Pivot tables reshape data by aggregating values across different dimensions.
Basic Pivot Table
import pandas as pd
df = pd.DataFrame({
"Category": ["A", "B", "A", "B", "A"],
"Month": ["Jan", "Jan", "Feb", "Feb", "Jan"],
"Sales": [100, 200, 150, 180, 120]
})
# Create pivot
pd.pivot_table(df, values="Sales", index="Category", columns="Month")
Aggregation
# Multiple aggregation functions
pd.pivot_table(df, values="Sales", index="Category",
aggfunc=["sum", "mean", "count"])
# Different functions per column
pd.pivot_table(df,
values=["Sales", "Quantity"],
aggfunc={"Sales": "sum", "Quantity": "mean"})
Margins and Subtotals
pd.pivot_table(df, values="Sales", index="Category",
columns="Month", margins=True, margins_name="Total")
Practice Problems
- Create pivot table from sales data
- Use multiple aggregation functions
- Add totals and subtotals
- Handle missing values in pivot
- Visualize pivot table results