How wbert/nba_comparison-knn works
This repository is an NBA player similarity finder. Its user workflow collects player statistics, scales them, queries a nearest-neighbor model, and displays matching players with distances. A separate training workflow reads the player dataset, fits the scaler and neighbor model, evaluates neighbor distances, and saves the artifacts used by the app. The graph is based on the supplied excerpts; the README is empty, and the dataset and serialized model contents were not inspected.
Main entry points: main.py Stats interface · train.py Training workflow · dataset.csv Player dataset · scaler.joblib Scaler artifact
Components 12
Similarity app
- Stats interface
main.py - Input scaling
main.py - Neighbor search
main.py - Match results
main.py
Model training
- Training workflow
train.py - Fit scaler
train.py - Fit neighbors
train.py - Neighbor evaluation
train.py
Data and artifacts
- Player dataset
dataset.csv - Scaler artifact
models/scaler.joblib - KNN artifact
models/knn_model.joblib
Other components
- User
Connections 13
- User → Stats interface: enters stats
main.py - Stats interface → Input scaling: scales input
main.py - Stats interface → Neighbor search: queries neighbors
main.py - Stats interface → Player dataset: loads player names
main.py - Stats interface → Scaler artifact: loads scaler
main.py - Stats interface → KNN artifact: loads model
main.py - Stats interface → Match results: displays matches
main.py - Training workflow → Player dataset: reads stats
train.py - Training workflow → Fit scaler: fits scaler
train.py - Training workflow → Fit neighbors: fits model
train.py - Fit scaler → Scaler artifact: saves scaler
train.py - Fit neighbors → KNN artifact: saves model
train.py - Training workflow → Neighbor evaluation: evaluates neighbors
train.py