This repository contains notebook-driven work for osteoarthritis-related gait classification, feature engineering, cohort analysis, and model experimentation.
The project is organized as a research workspace and includes both exploratory work and more structured/final reporting workflows.
ML/: classifier development, condition classification, and final reporting notebooksexplore/: exploratory data inspection and metadata analysisfeatures/: feature generation, augmentation, and supporting functionsload/: data loading utilities and notebooksstats/: cohort, distribution, trend, and comparison notebooksdataset/: dataset notes and quick-start materialdownloaded_data/: local data staging area
Notebooks under ML/master/Final/ contain the most structured final-stage reporting workflows, while other notebook directories include broader experimental and intermediate work.
The main final-stage reporting area is:
ML/master/Final/
Key locations inside that tree:
ML/master/Final/results/: final results output directoryML/master/Final/HOA/: HOA-focused final reporting notebooksML/master/Final/KOA/: KOA-focused final reporting notebooksML/master/Final/KOA/feature_experiment/: KOA feature-experiment reporting notebooksML/master/Final/lasso/: lasso-based feature/model notebooksML/master/Final/all_ml_experiments.ipynb: consolidated ML experiment notebookML/master/Final/all_ml_experiments_population.ipynb: population-level experiment notebookML/master/Final/KOA_HOA.ipynb: combined KOA/HOA analysis notebookML/master/Final/ml_with_confounders.ipynb: confounder-adjusted analysis notebookML/master/Final/table4.ipynb: final table-generation notebook
Create and activate a virtual environment in the project root:
python3 -m venv .venv
source .venv/bin/activate
pip install --upgrade pip
pip install -r requirements.txt
python -m ipykernel install --user --name rsh-osteoarthritis-classification --display-name "rsh-osteoarthritis-classification"Start JupyterLab from the repository root:
source .venv/bin/activate
jupyter labRunning JupyterLab from the project root is the safest default for this repository because many notebooks use relative paths across directories such as features/, load/, dataset/, and ML/.
- This repository is primarily notebook-oriented.
- Some workflows depend on local data artifacts that may not all be committed in this checkout.
requirements.txtis scoped to the Python notebook workflow and does not attempt to manage non-Python tooling.