Datasets Guide¶
Every dataset used across the course projects and capstones — with download links, what's inside, and which project it powers. All are free and publicly available.
How to use this guide
Each project's dataset-guide.md has detailed schema documentation. This page is the master index of where to get the data. Download the dataset for whichever project or capstone you're working on.
Project Datasets¶
Project 1 — Sales Dashboard¶
Dataset: Sample Superstore
Link: https://www.kaggle.com/datasets/vivek468/superstore-dataset-final
Contents: ~10,000 retail orders, 4 years, with sales, profit, discount, region, category.
Why: The classic beginner sales dataset. Clean, rich, and ideal for revenue/profit analysis.
Encoding note: load with encoding="latin-1".
Project 2 — Customer Churn Analysis¶
Dataset: Telco Customer Churn Link: https://www.kaggle.com/datasets/blastchar/telco-customer-churn Contents: 7,043 customers, 21 features, churn flag. Why: The standard churn dataset. Clear target variable, strong actionable drivers.
Project 3 — HR Analytics¶
Dataset: IBM HR Analytics Employee Attrition Link: https://www.kaggle.com/datasets/pavansubhasht/ibm-hr-analytics-attrition-dataset Contents: 1,470 employees, 35 features, attrition flag. Why: Clean HR dataset for attrition analysis (and ethical-judgment practice).
Project 4 — COVID-19 Data Analysis¶
Dataset: Our World in Data COVID-19 Link: https://github.com/owid/covid-19-data/tree/master/public/data Contents: Daily cases, deaths, vaccinations per country, with per-capita columns. Why: The gold standard for time-series and per-capita analysis practice.
Project 5 — E-commerce Analytics¶
Dataset: Brazilian E-Commerce (Olist) Link: https://www.kaggle.com/datasets/olistbr/brazilian-ecommerce Contents: ~100k orders across 8 related tables (orders, items, customers, payments, reviews, products, sellers, geolocation). Why: The most realistic relational dataset — ideal for multi-table joins and customer LTV.
Project 6 — Financial Performance Analysis¶
Dataset: Microsoft Financial Sample Link: https://learn.microsoft.com/en-us/power-bi/create-reports/sample-financial-download Contents: Sales transactions by segment, country, product, with cost, discount, and profit. Why: Clean financial data for P&L, margin, and variance analysis.
Project 7 — IPL Sports Analytics¶
Dataset: IPL Complete Dataset (2008–2020+)
Link: https://www.kaggle.com/datasets/patrickb1912/ipl-complete-dataset-20082020
Contents: matches.csv (~1,000 matches) + deliveries.csv (~250,000 ball-by-ball records).
Why: Large, granular event data — great for aggregation and domain-specific logic.
Capstone Dataset Suggestions¶
| Capstone | Suggested Datasets |
|---|---|
| Sales Performance Dashboard | Superstore, or any retail sales data |
| Customer Segmentation | Online Retail II (UCI), Olist |
| HR Attrition Analytics | IBM HR Analytics |
| E-commerce Business Dashboard | Olist (multi-table) |
| Financial Analytics System | Microsoft Financial Sample, synthetic P&L |
| Social Media Analytics | Kaggle social media datasets, or your own exported analytics |
General-Purpose Dataset Sources¶
Kaggle¶
https://www.kaggle.com/datasets — 60,000+ datasets across every domain. Best starting point. Includes notebooks showing how others analysed each dataset.
UCI Machine Learning Repository¶
https://archive.ics.uci.edu — classic, well-documented academic datasets. Online Retail II and Bank Marketing are particularly useful.
data.gov / data.gov.uk¶
Government open data — housing, health, transport, economics. Great for portfolio projects with real public-interest data.
Maven Analytics Data Playground¶
https://mavenanalytics.io/data-playground — curated datasets designed for practice, each with a business context and questions.
Google Dataset Search¶
https://datasetsearch.research.google.com — a search engine for datasets across the web.
data.world¶
https://data.world — community datasets with collaboration features.
Tips for Choosing a Dataset¶
For a portfolio project, pick a dataset that:
- Tells a business story — not just numbers, but something a stakeholder would care about
- Is the right size — 1k-1M rows. Too small is trivial; too big needs infrastructure
- Has a clear question — you can state "I'm trying to find out X"
- Genuinely interests you — your enthusiasm shows in the final work
- Isn't overdone — the Titanic and Iris datasets are so common they signal "beginner." A less-common dataset stands out.
Creating Synthetic Data¶
When you can't find the right dataset, generate one:
import pandas as pd
import numpy as np
rng = np.random.default_rng(42)
n = 5000
df = pd.DataFrame({
"order_id": [f"O{i:05d}" for i in range(n)],
"order_date": pd.to_datetime("2024-01-01") + pd.to_timedelta(rng.integers(0, 365, n), "D"),
"customer_id": [f"C{rng.integers(1, 500):04d}" for _ in range(n)],
"category": rng.choice(["Electronics", "Clothing", "Books", "Home"], n),
"quantity": rng.integers(1, 6, n),
"unit_price": rng.uniform(10, 500, n).round(2),
"status": rng.choice(["completed", "pending", "cancelled"], n, p=[0.7, 0.2, 0.1]),
})
df["total"] = df["quantity"] * df["unit_price"]
df.to_csv("synthetic_orders.csv", index=False)
Synthetic data is perfect for practising techniques when you control exactly what patterns exist.