Este repo ilustra un proceso sencillo de automatización de transformación y modelado de datos, a través de un pipeline utilizando Luigi.
Stack principal
- Python 3.7+
- Streamlit
- Scikit-learn
- Pandas
- Luigi
Idea
El proceso completo es descrito en una app interactiva que encuentras en el script app.py
. Checa los detalles de cómo levantar la app en la sección de cómo ejecutar los scripts.
Setup
- Crea un entorno virtual (te recomiendo usar
conda
):conda create --name data-pipes python=3.7
- Activate the virtual environment:
conda activate data-pipes
- Install requirements:
pip install -r requirements.txt
Ejecuta los scripts
App interactiva
Para ejecutar la app interactiva, simplemente ejecuta el comando de Streamlit con el entorno virtual activado:
(data-pipes) streamlit run app.py
Esto abrirá un servidor local en: http://localhost:8501
.
Pipeline de datos
Si deseas ejecutar una tarea en específico ,supongamos la TareaX
que se encuentra en el script tareas.py
, entonces ejecuta el comando:
PYTHONPATH=. luigi --module tareas TareaX --local-scheduler
¡Puedes extender el código y agregar las tareas que tú desees!