drivendataorg/cookiecutter-data-science

A logical, reasonably standardized, but flexible project structure for doing and sharing data science work.

What it solves

It addresses the lack of consistency and organization in data science projects, providing a standardized yet flexible directory structure to make work more reproducible and easier to share.

How it works

It is a command-line tool that generates a pre-defined project template. When a user runs the ccds command, it creates a folder hierarchy with dedicated spaces for raw and processed data, notebooks, trained models, source code, and documentation.

Who it’s for

Data scientists and researchers who want to implement best practices for project organization and avoid the chaos of unstructured project folders.

Highlights

  • Standardized Layout: Organizes projects into clear categories like data/raw, data/processed, and models.
  • Integrated Tooling: Includes a Makefile for convenience commands and a pyproject.toml for configuration.
  • Modular Source Code: Provides a dedicated directory for project-specific Python modules, including separate files for feature engineering and model training.
  • Version Control: Allows users to checkout specific versions or branches of the project template.

Related

  • Project
  • Project
  • Project
  • Project
  • Project