knoxel/soccer-feature-engineering
Soccer Feature Engineering Hackathon — 33 Match-Level Features This repository contains a complete, reproducible feature engineering pipeline for the Kaggle Soccer Feature Engineering Hackathon, built from SkillCorner Open Data. Output features.csv — 18 rows (9 matches × 2 teams), 35 columns: match_id, team_id 33 engineered features across 5 behavioral dimensions All values are raw aggregated counts or cumulative distances — no percentages, no ratios.… See the full description on the dataset page: https://huggingface.co/datasets/knoxel/soccer-feature-engineering.
Soccer Feature Engineering Hackathon — 33 Match-Level Features
This repository contains a complete, reproducible feature engineering pipeline for the Kaggle Soccer Feature Engineering Hackathon, built from SkillCorner Open Data.
Output
- `features.csv` — 18 rows (9 matches × 2 teams), 35 columns:
match_id,team_id- 33 engineered features across 5 behavioral dimensions
All values are raw aggregated counts or cumulative distances — no percentages, no ratios.
Feature Architecture
How to Run
git clone https://github.com/SkillCorner/opendata.git
pip install pandas numpy
python soccer_feature_engineering.pyThe script dynamically discovers all *_dynamic_events.csv files via glob — no hardcoded match IDs required.
Extended Analysis
soccer_feature_engineering_extended.py adds:
Tactical Archetypes Discovered (k=4)
Data Source
SkillCorner Open Data — 9 matches of Australian A-League 2024/2025, MIT License.
Requirements
- Python 3.8+
- pandas, numpy
- scikit-learn (for extended clustering)
- matplotlib, seaborn (for extended visualizations)
