Repositório com estrutura padrão para projetos de Ciência de Dados. O template original foi desenvolvido pela Cientista de Dados Khuyen Tran, que frequentemente compartilha artigos muito interessantes e úteis para Análise e Ciência de Dados de todas as senioridades.
- Poetry: Gerenciamento de dependências e pacotes
- DVC: Versionamento de Dados
- Pydantic: Validação de dados
- Plugins pré-commit: Automação de formatação do código pré-commit
- Makefile: Criação de funções para rotinas de comando no terminal
- GitHub Actions: Automação de fluxo para build, teste e deploy de código (CI/CD)
- pdoc: Automação de criação de documentação para API do projeto
.
├── config
│ ├── model
│ ├── model1.yaml
│ ├── model2.yaml
│ ├── process
│ ├── process1.yaml
│ ├── process2.yaml
│ ├── main.yaml
├── data
│ ├── final # Dados após treino do modelo
│ ├── processed # Dados processados (em caso de uso local)
│ ├── raw # Dados brutos (em caso de uso local)
├── docs # Documentação do projeto
├── .flake8 # Configuração para formatação flake8
├── .gitignore # Arquivos/Diretórios a serem ignorados pelo git
├── Makefile # Arquivos das rotinas criadas para usar no terminal
├── models # Modelos do projeto
├── notebooks # Notebooks do projeto
├── .pre-commit-config.yaml # Configurações pré-commit
├── pyproject.toml # Dependencias do Poetry
├── README.md # Descrição do Projeto
├── src # Código fonte do projeto
│ ├── __init__.py # Transformar o diretório em Módulo Python
│ ├── config.py # Configurações do código
│ ├── process.py # Código de processamento dos dados para treinamento do(s) modelo(s)
│ ├── run_notebook.py # Rodar notebook
│ └── train_model.py # Modelo para treinamento
└── tests # Diretório de testes
├── __init__.py # Transformar o diretório em Módulo Python
├── test_process.py # Funções para teste de process.py
└── test_train_model.py # Funções para teste de train_model.py
Instalar Cookiecutter:
pip install cookiecutter
Criando um projeto:
cookiecutter https://github.com/garcialn/dt_sci-template