Template para proyectos de GeoDataScience con Python
Para crear un repositorio a partir de este template sólo necesitas seguir estas instrucciones de GitHub.
La organización del proyecto es como sigue
- Cada proyecto debe estar en su propio repositorio
- Scripts externos o librerías compiladas van en la carpeta
bin/
- Guarda los datos en la carpeta
data/
- La documentación y otros archivos de texto en la carpeta
doc/
- Todos los archivos relacionados con Docker en la carpeta
docker
- Los notebooks van en la carpeta
notebooks/
. - Los resultados y archivos intermedios en la carpeta
outputs/
. - El código fuente, clases, funciones, et. guárdalos en la carpeta
src/
.
- Rasterio
- Rasterstats
- Geopandas
- PySal
- scikit-learn
- scikit-image
- Folium
- Seaborn
- Bokeh
- Holoviews
- GeoViews
- GeoPy
Además de las dependencias básicas como numpy, pandas y matplotlib.
Nota: Estas son las instrucciones usando Linux aunque deberían funcionar igual para Mac. Para levantar todo en windows busca la dicumentación de conda para esa plataforma.
En el archivo environment.yml
están las dependencias básicas de un proyecto general de GeoDataScience con Python, si necesitas agregar más, ese es el lugar indicado. Para crear el entorno en una carpeta adentro del repositorio:
$ ENV_PREFIX=$PWD/env
$ conda env create --prefix $ENV_PREFIX --file environment.yml --force
Y para activarlo:
$ conda activate $ENV_PREFIX
En este caso el environment se crea en la carpeta env
en la raiz del repositorio (tienes que crearla) y por default no se sube al repositorio.
Si quieres instalar y habilitar algunas extensiones de JupyterLab útiles para varios proyectos, ejecuta el script postBuild:
$ .postBuild.sh
También puedes sólo ejecutar el script create-conda-env.sh
que ejecuta todos los comandos necesarios. Desde la raiz del repositorio;
$ ./bin/create-conda-env.sh
Otra forma de levantar el repositorio y las dependencias es usando Docker. Docker es un sistema de contenedores de software que permite reproducir fácilmente entornos de forma independiente de la plataforma.
Primero hay que instalar Docker y docker-compose y seguir los pasos de post-instalación.
Ya con todo instalado, desde la carpeta Docker
de este repositorio, la primera vez que se ejecute:
$ docker-compose up --build
Las siguientes veces no es necesario el flag --build
$ docker-compose up
docker-compose
va a levantar un jupyter-lab
dentro del container. Puedes acceder a él desde localhost:8080
en un browser. Pide un token que pudes copiar/pegar desde la terminal. En ese lab están disponibles todas las librerías.
Igual que si instalaras via conda, si necesitas agregar más dependencias de Python, lo puedes hacer en environment.yml