Data Science Project Structure
Sources:
Assuming that Python is they main language for a data science project. Assuming also to use Python venv.
The following structure is adapted from: dvc-pip
.
โโโ README.md
โโโ pyproject.toml
โโโ .gitignore
โโโ LICENSE
โ
โโโ configs/ # Main configuration file
โ โโโ main.yaml # Configurations for training model
โ โโโ model/
| | |โโ model1.yaml
| | |โโ model2.yaml
| โโโ process/ # Configuration for process
| โโโ process1.yaml
โ
โโโ data/
โ โโโ final/ # Data after training
โ โโโ processed/ # Data after processing
| โโโ raw/ # Raw data
|
โโโ docs/ # Documentation
โโโ models/ # Store models
โโโ notebooks/ # Store notebooks
โ
โโโ src/ # Source code
โ โโโ __init__.py
โ โโโ process.py
โ โโโ __pycache__/
โ โโโ train_mode.py
โ
โโโ scripts/ # Utility scripts
โ โโโ download_data.sh
โ โโโ download_models.sh
โ
โโโ tests/ # Unit tests
โ โโโ __init__.py
โ โโโ test_process.py
โ โโโ test_training.py
Explanation with each part:
- For
pyproject.tomlsee pyproject.toml