Plantillas de proyectos para ciencia de datos
¿Qué son y por qué utilizar plantillas de proyectos?
Instalar Cookiecutter
Crear plantillas de proyecto personalizadas
Implementar hooks
Distribuir plantilla de proyecto
Manejo de archivos en Python
Manejo de rutas: problemática
Manejo de rutas del sistema: OS
Manejo de rutas del sistema: Pathlib
Manejo de rutas del sistema: PyFilesystem2
Crear referencias relativas de archivos
Caso práctico
Descarga de plantilla y configuración de ambiente virtual
Utilizar proyecto como un módulo de Python
Flujo de trabajo de los notebooks
Conclusiones
Aplica estas herramientas
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Convierte tus certificados en títulos universitarios en USA
Antes: $249
Paga en 4 cuotas sin intereses
Termina en:
Jesús Vélez Santiago
Ahora que ya conoces todo lo que las plantillas de trabajo pueden darte, úsalas para agilizar tu productividad y enfocarte en lo que realmente importa, y para hacerle la vida más fácil a los que usen tus proyectos.
Recuerda utilizar los manejadores de rutas para enraizar tus proyectos y tener un entorno de archivos organizado e independiente del sistema de archivos y sistema operativo.
Emplea todos los conocimientos adquiridos en este curso en tus proyectos de Data Science, Machine Learning y Deep Learning.
Contribución creada por: Néstor Arellano.
Aportes 16
Preguntas 0
Realmente no conocía las herramientas de plantillas, pero suena muy interesante para hacer replicas de proyectos de tareas rutinarias. Sin duda las aplicaré en algún proyecto recurrente que tenga.
Les comparto mi repositorio con mi plantilla de cookiecutter
En este implementé algunas cosillas extras como que se pueda escoger entre conda o pip, que se eliminen archivos innecesarios (por ejemplo LICENSE cuando no se escoge una licencia) y un script que ejecuta todo lo de install.md
según se haya escogido conda (uso de mamba) o pip
test answers
Resumen
1.
¿Qué son las plantillas de proyectos en ciencia de datos?
Medio que posibilita portar o construir un diseño predefinido.
2.
¿Por qué utilizar plantillas de proyectos en ciencia de datos?
Agilizará tu trabajo. Te agradecerán y te agradecerás. Reducirás la fatiga por decisión.
3.
¿Qué es Cookiecutter?
Un programa que permite crear proyectos a partir de cookiecutters (i.e., plantillas de proyectos).
4.
Detrás de escenas Cookiecutter funciona con Jinja2. Jinja2 tiene tres bloques especiales para el diseño de plantillas llamados:
Bloques de expresión, bloques declarativos y bloques de comentarios.
5.
Para que Cookiecutter funcione correctamente necesita de 2 archivos escenciales, ¿cuáles son?
Directorio {{ cookiecutter.project_slug }} y cookiecutter.json
6.
¿En qué consiste el concepto hooks en Cookiecutter?
Son archivos que le dicen a Cookiecutter qué hacer antes y después de crear la plantilla de proyecto.
7.
¿Por qué deberías utilizar un manejador de rutas del sistema de archivos con Python?
Para compartir proyectos con otras personas/computadoras/sistema operativos y que las rutas del proyecto no deban cambiarse de nuevo para funcionar.
8.
En Python existen tres manejadores de rutas: OS, Pathlib y PyFilesystem2. ¿Cuál de las siguientes instrucciones regresa un error?
fs.path.join("…", “documents”)
9.
¿Con qué comando instalas tu proyecto de ciencia de datos como una librería de Python?
pip install --editable .
10.
¿Para qué sirve la magica de Ipython %autoreload?
Recargar módulos antes de ejecutar el código de usuario.
11.
¿Cuál es una razón a favor de dividir tus notebooks dependiendo de su contenido y etapa del proyecto? Por ejemplo: 0.1-jvelezmagic-download_data.ipynb y 0.2-jvelezmagic-preprocessing.ipynb
Evita tener notebooks gigantes e innecesariamente complicados al tener toda la lógica del proyecto.
Ver menos
Al practicar vas a comenzar a utilizar todos los pasos en armonía y eventualmente lograrás unificar tu entorno de desarrollo, lo que va a ocasionar que te sientas más ligero, menos preocupado de que va a pasar y de que tienes que hacer.
Excelente curso, de verdad muy bueno. Ojalá este profe se volviera a ver.
Buen curso, se me aclararon algunas dudas que tenía.
Gran curso…!!!
wow gran curso
Excelente curso, cada vez nos adentra más al entorno real de trabajo de un data scientist.
Muy buen curso! Gracias Jesus
Excelente profesor
Este es mi Template creado gracias al curso: https://github.com/sergi0gs/DataScience_Template
😄
Al fin terminé de pulir mi plantilla cookiecutter creo :v
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?