📊 Scenario:
You have an
orders dataset with:order_idcustomer_idorder_datecategorysales
🎯 Task:
Find the top-selling category for each month based on total sales.
✅ Pandas Solution:
import pandas as pd
# Convert to datetime
df['order_date'] = pd.to_datetime(df['order_date'])
# Extract month
df['month'] = df['order_date'].dt.strftime('%b-%Y')
# Total sales by month & category
sales_summary = (
df.groupby(['month', 'category'])['sales']
.sum()
.reset_index()
)
# Rank categories within each month
sales_summary['rank'] = (
sales_summary.groupby('month')['sales']
.rank(method='dense', ascending=False)
)
# Top category per month
result = sales_summary[sales_summary['rank'] == 1]
print(result)
💡 Concepts Tested:
✔️
groupby()✔️ Date handling
✔️ Aggregation
✔️ Ranking within groups
React ♥️ for more interview questions