Data analytics and machine learning project
Chess Move Data Analysis
This project converts raw chess game logs into structured datasets, segments games into opening, middlegame, and endgame phases, and performs analysis to identify player weaknesses and outcome patterns.
What I built
This project converts raw chess game logs into structured datasets, segments games into opening, middlegame, and endgame phases, and performs analysis to identify player weaknesses and outcome patterns.
Why I built it
Raw chess logs are difficult to inspect manually at scale, making it hard to identify phase-specific patterns and outcome signals.
My role
Built the preprocessing pipeline, phase segmentation logic, exploratory analysis, and visual reporting structure.
How it works
- Raw game logs are parsed and cleaned into structured tabular datasets.
- Move counts and game metadata segment each game into opening, middlegame, and endgame phases.
- Analysis notebooks generate aggregate player and outcome trends.
- Optional modeling experiments explore predictive signals from engineered features.
System architecture
- Raw game logs are parsed and cleaned into structured tabular datasets.
- Move counts and game metadata segment each game into opening, middlegame, and endgame phases.
- Analysis notebooks generate aggregate player and outcome trends.
- Optional modeling experiments explore predictive signals from engineered features.
Screenshots and demo

Technical challenges
- Processing a large volume of irregular game logs reliably.
- Choosing phase segmentation rules that are explainable and consistent.
- Presenting analysis in a way that is useful beyond charts alone.
Results
- 700,000+ game logs processed
- Phase-wise performance analysis
- Structured data pipeline
What I learned
- Data cleaning decisions become part of the model story.
- Readable analysis is a product skill, not just a notebook skill.
Explore the code
Explore the code, setup instructions, and technical documentation on GitHub.