domingo, 3 de noviembre de 2019

Configurando el entorno de trabajo


Para nuestro proyecto vamos a usar:
  • Python como lenguaje de programación. 
  • Jupyter como entorno de trabajo.
  • Anaconda como gestor de paquetes.
A continuación, vamos a describir qué es cada elemento que hemos mencionado y cómo los instalamos para poder llevar a cabo el proyecto.

¿QUÉ ES PYTHON?

Python es un lenguaje de programación interpretado, imperativo y orientado a objetos. Tiene una extensa variedad de librerías que facilitan enormemente el trabajo del programador y, por ello, se ha convertido en uno de los lenguajes más populares del momento.

Para aquellos que quieran iniciarse en la programación en Python, yo recomiendo este tutorial. Es un tutorial en inglés de unas seis horas que te introduce los fundamentos básicos del lenguaje. Si estás interesado en profundizar aún más, os recomiendo investigar las siguientes librerías:
  • Matplotlib: es una librería para dibujar gráficos en 2D. Tutorial: click aquí.
  • Numpy: es una librería que facilita el trabajo con vectores y matrices. Tutorial: click aquí.
  • Pandas: es una extensión de Numpy para trabajar con tablas de datos. Tutorial: click aquí.
Link para descargar Python: click aquí.



¿QUÉ ES JUPYTER?

Jupyter es un entorno de trabajo interactivo que permite escribir bloques de código y visualizar gráficos de forma muy dinámica. Podemos ejecutar bloques de código de forma aislada y comprobar lo que estamos haciendo.

Link para descargar Jupyter: click aquí.



¿QUÉ ES ANACONDA?

Anaconda es un gestor de paquetes que nos va a facilitar el uso de librerías y de entornos virtuales. Un entorno virtual es un espacio aislado donde podemos instalar los paquetes que necesitemos para nuestros proyectos. Estos paquetes estarán instalados únicamente dentro del entorno virtual y no interferirán de ninguna forma con los paquetes de otro entorno. De esta forma, podemos probar librerías sin el riesgo de provocar efectos colaterales con algún paquete que ya estemos usando.

Link para descargar Anaconda: click aquí.




PREPARANDO EL ENTORNO DE TRABAJO

Lo primero que tenemos que hacer para empezar a trabajar es instalar Python, Jupyter y Anaconda. Una vez hayamos hecho esto, lo que haremos a continuación será:

  1. Crear un entorno virtual.
  2. Instalar los paquetes que necesitemos en ese entorno virtual.
  3. Vincular Jupyter con Anaconda.
  4. Crear un proyecto en Jupyter dentro de un entorno virtual de Anaconda.
  5. Ejecutar código en Python dentro del proyecto de Jupyter.

PASO 1. Crear entorno virtual.

Debemos abrir un terminal de Anaconda. Podemos escribir en la barra de búsqueda Anaconda Prompt y, si hemos realizado correctamente la instalación de Anaconda, nos aparecerá una terminal como esta:



Si vemos que pone (base) delante del prompt, quiere decir que estamos en el entorno virtual raiz (root). El entorno base es un entorno que se crea por defecto y que está activo si no hay otro en uso. Para crear un entorno virtual, la sintaxis del comando es:

conda create -n nombreEntorno python=x.x


El nombre del entorno lo decidimos nosotros y x.x es la versión de Python que tenemos instalada. Si no recordamos nuestra versión de Python, podemos abrir una terminal de Windows y escribir python.



Vamos a probar creando un entorno virtual con el siguiente comando:

conda create -n mientorno python=3.7


Cuando lo ejecutemos, nos aparecerá la lista de paquetes que se va a instalar y nos preguntan si queremos aceptar la instalación [y/n]. Para ver los entornos virtuales que tenemos creados, podemos usar el comando:

conda env list

La salida que se obtiene es de la siguiente forma:



En mi caso, tengo varios entornos creados y entre ellos se encuentra el que acabamos de crear (el * indica el entorno virtual activo). Para poder usar el entorno que hemos creado, debemos ejecutar el comando:

conda activate mientorno

Después de esto, veremos que el prompt ha cambiado.


Para salir del entorno y volver al entorno base, debemos ejecutar:

conda deactivate

PASO 2. Instalando paquetes

Vamos a probar instalando una librería en este entorno. La sintaxis del comando es:

conda install nombreLibreria

Por ejemplo, vamos a instalar la librería matplotlib para poder hacer gráficos en 2D.

conda install matplotlib

Al igual que ocurrió antes, nos mostrará una lista con los paquetes que se van a instalar. La ventaja de usar Anaconda es que si matplotlib tiene dependencias con otra librería, Anaconda las busca y las instala automáticamente. 

PASO 3. Vincular Jupyter con Anaconda

Para poder usar Jupyter con Anaconda, debemos instalar un paquete llamado nb_conda dentro del entorno virtual de trabajo, en nuestro caso, dentro de mientorno.

conda install nb_conda

Una vez lo hayamos instalado, podemos abrir Jupyter desde Anaconda usando el comando:

jupyter notebook

Importante: si vamos a trabajar en un entorno virtual, debemos asegurarnos de que tenemos ese entorno activado con conda activate nombreEntorno.

PASO 4. Crear un proyecto en Jupyter

Cuando tengamos abierto Jupyter, veremos que se ha abierto en el navegador y que nos muestra las carpetas que tenemos en nuestro equipo. Seleccionamos la carpeta en la que queremos crear nuestro proyecto y abrimos la pestaña new que se encuentra a la derecha de la pantalla. 

Veremos que se despliega una lista que muestra los entornos virtuales que tenemos creados. Seleccionamos el entorno que nos interese y se creará el proyecto. Debemos asegurarnos de que el entorno que seleccionemos esté acompañado de un * para asegurarnos de que estamos creando el proyecto en el entorno virtual activo.



PASO 5. Ejecutar código en Python

Para ejecutar el código, solo tenemos que escribirlo dentro del cuadro y dar al botón Run. Por ejemplo, vamos a visualizar un gráfica sencilla usando la librería que hemos instalado:



Llegados a este punto, ya podemos empezar a ejecutar todo el código que veamos a lo largo del proyecto. Os animo a experimentar con Jupyter y con las librerías que os he mencionado al principio del post. 

Un saludo!


1 comentario:

  1. Me ha servido de muchísimo ya que estaba perdido. Tutorial muy recomendable ya que lo explica muy bien

    ResponderEliminar

Teoría de Redes Complejas (Parte 1). Conceptos básicos

Para continuar con nuestro proyecto vamos a hacer un estudio aplicando teoría de grafos y de redes complejas con el objetivo de demostrar...