https://github.com/jayavarshini-jayakumaran/nba-exploratory-data-analysis
A data analytics project that explores NBA game and player data using Python and Power BI. Features data preprocessing, EDA, feature engineering, and an interactive dashboard for visualizing team and player performance trends.
https://github.com/jayavarshini-jayakumaran/nba-exploratory-data-analysis
data-analysis data-visualization exploratory-data-analysis powerbi python3
Last synced: 3 days ago
JSON representation
A data analytics project that explores NBA game and player data using Python and Power BI. Features data preprocessing, EDA, feature engineering, and an interactive dashboard for visualizing team and player performance trends.
- Host: GitHub
- URL: https://github.com/jayavarshini-jayakumaran/nba-exploratory-data-analysis
- Owner: Jayavarshini-Jayakumaran
- License: mit
- Created: 2025-12-29T14:17:00.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2026-06-18T00:14:43.000Z (5 days ago)
- Last Synced: 2026-06-18T02:13:58.923Z (5 days ago)
- Topics: data-analysis, data-visualization, exploratory-data-analysis, powerbi, python3
- Language: Jupyter Notebook
- Homepage:
- Size: 146 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# NBA Analytics Dashboard
An end-to-end data analytics project exploring NBA game statistics, player performance, and team trends using Python and Power BI.
---
## Competition Achievement
π Developed this dashboard for the **Statistella Data Analytics Competition (IIT BHU, Varanasi)**, where our team secured **3rd Rank in Round 1**.
### Dashboard & Result
---
## Dataset
Data sourced from Kaggle: [NBA Games Dataset](https://www.kaggle.com/datasets/nathanlauga/nba-games)
| File | Description |
|---|---|
| `games.csv` | Game-level results and team stats (2003β2022) |
| `games_details.csv` | Player-level box scores per game |
| `players.csv` | Playerβteamβseason mapping |
| `ranking.csv` | Daily standings per team per season |
| `teams.csv` | Team metadata (arena, coach, GM, etc.) |
---
## Project Structure
```
nba-analytics-dashboard/
β
βββ data/
β βββ raw/
β βββ processed/
β
βββ notebooks/
β βββ 01_data_loading_and_cleaning.ipynb
β βββ 02_feature_engineering_and_eda.ipynb
β
βββ dashboard/ # Power BI dashboard files
β
βββ requirements.txt
βββ LICENSE.txt
βββ README.md
```
---
## Setup
### 1. Clone the repository
```bash
git clone https://github.com/Jayavarshini-Jayakumaran/nba-exploratory-data-analysis.git
cd nba-exploratory-data-analysis
```
### 2. Create and activate a virtual environment
```bash
python -m venv venv
# Windows
venv\Scripts\activate
# macOS/Linux
source venv/bin/activate
```
### 3. Install dependencies
```bash
pip install -r requirements.txt
```
### 4. Add raw data
Download the dataset from Kaggle and place the CSV files inside `data/raw/`.
### 5. Run the notebooks in order
```
notebooks/01_data_loading_and_cleaning.ipynb
notebooks/02_feature_engineering_and_eda.ipynb
```
---
## Notebooks
### 01 β Data Loading & Cleaning
- Loads all 5 raw CSVs
- Converts `MIN` (minutes played) from `MM:SS` string to float
- Handles nulls: fills `START_POSITION`, `COMMENT`, `NICKNAME`, `PLUS_MINUS`
- Parses dates, engineers `GAME_RESULT` and `TOTAL_POINTS`
- Splits `HOME_RECORD` / `ROAD_RECORD` into numeric win/loss columns
- Exports cleaned CSVs to `data/processed/`
### 02 β Feature Engineering & EDA
- Merges game data with team metadata
- Engineers features: `POINT_DIFF`, `WINNING_TEAM`, `HOME_WIN`, `AWAY_WIN`
- Aggregates season-level, team-level, and player-level summaries
- Exports final analytical tables to `data/processed/`
---
## Output Files (data/processed/)
| File | Description |
|---|---|
| `games_details_cleaned.csv` | Cleaned player box scores |
| `games_cleaned.csv` | Cleaned game results |
| `games_with_teams.csv` | Games enriched with team metadata |
| `games_features.csv` | Feature-engineered games table |
| `team_stats.csv` | Per-team per-season aggregates |
| `home_away_summary.csv` | Home vs away win rates by season |
| `season_summary.csv` | Season-level scoring and win rate trends |
| `player_summary.csv` | Per-player per-season averages (min 20 games) |
| `players_cleaned.csv` | Cleaned players table |
| `ranking_cleaned.csv` | Cleaned standings with parsed record columns |
| `teams_cleaned.csv` | Cleaned teams metadata |
---
π§ **Email** - [jayavarshinijayakumaran11@gmail.com](mailto:jayavarshinijayakumaran11@gmail.com)
π **Connect** - [LinkedIn: Jayavarshini Jayakumaran](https://www.linkedin.com/in/jayavarshini-jayakumaran)
π **License** - [MIT](LICENSE)
Finish what you started π»