Instalación de Jupyter Notebook

Instalación de Jupyter Notebook

El presente artículo explica cómo instalar, ejecutar y usar Jupyter Notebooks para la ciencia de datos, incluidos consejos, mejores prácticas y ejemplos.


Jupyter es una aplicación web en la que se pueden crear y compartir documentos que contienen códigos en vivo, ecuaciones, visualizaciones y texto, Jupyter Notebook es una de las herramientas ideales para adquirir las habilidades de ciencia de datos necesarias. El presente artículo cubrirá los siguientes temas:

  • Una descripción general básica de la aplicación Jupyter Notebook y sus componentes.

  • La historia de Jupyter Project para mostrar cómo está conectado a IPython.

  • Una descripción general de las tres formas más populares de ejecutar los cuadernos: con la ayuda de una distribución de Python, con pip o en un contenedor Docker.

  • Una introducción práctica a los componentes descritos en la primera sección, con ejemplos en Pandas DataFrames, una explicación sobre cómo hacer mágicos los documentos en Jupyter Notebook y respuestas a preguntas frecuentes, como "¿Cómo alternar entre Python 2 y 3?".

  • Las mejores prácticas y consejos que coadyuvarán a generar un valor añadido a cualquier portafolio o proyecto en ciencia de datos.

¿Qué es un cuaderno Jupyter?

En este caso, "notebook" o "notebook documents" denotan documentos que contienen tanto código como elementos de texto enriquecidos, como figuras, enlaces, ecuaciones, ente otros. Debido a la combinación de código y elementos de texto, este tipo de documentos son ideales para la ciencia de datos; es decir, para reunir una descripción del análisis y de los resultados, así como la ejecución y realización del análisis de datos en tiempo real. La aplicación de Jupyter Notebook produce esta clase de documentos.

Hablaremos de esto en un momento. Por ahora, se debe saber que "Jupyter" es un acrónimo impreciso que significa Julia, Python y R. Los tres primeros lenguajes de programación que se podían encontrar en la aplicación de Jupyter. No obstante, actualmente Jupyter admite muchos otros lenguajes. Entonces, resulta importante recordar que Jupyter Notebook es un acrónimo.

En este contexto, los componentes principales de todo el entorno de Jupyter Notebook son, por un lado, los propios notebooks y las aplicaciones. Por otro lado, también tiene un kernel y un panel de control del notebook.

Veamos estos componentes con más detalle.

¿Qué es la aplicación Jupyter Notebook?

Como aplicación servidor-cliente, la aplicación de Jupyter Notebook permite editar y ejecutar los cuadernos a través de un navegador web. La aplicación se puede ejecutar en una PC sin acceso a Internet o se puede instalar en un servidor remoto, donde se puede acceder a ella a través de Internet.

Sus dos componentes principales son el kernel y su panel.

Un kernel es un programa que ejecuta e interpreta el código que introduce el usuario. La aplicación Jupyter Notebook tiene un kernel para el código creado con Python, pero también existen kernels disponibles para otros lenguajes de programación.

El panel de la aplicación muestra los documentos del cuaderno que se han creado recientemente y están disponibles para editar, además de que se puede utilizar para administrar los kernel: puede saber cuáles se están ejecutando y cerrarlos si es necesario.

La historia de los cuadernos de IPython y Jupyter

Para comprender completamente qué es Jupyter Notebook y qué funcionalidades ofrece, se debe conocer sus orígenes.

Retrocediendo brevemente a finales de los 80, cuando Guido Van Rossum comenzó a trabajar en Python en el Instituto Nacional de Investigación en Matemáticas e Informática de los Países Bajos.

Espera, tal vez eso es demasiado atrás.

Mejor vayamos a finales de 2001, veinte años después, cuando Fernando Pérez comenzó a desarrollar IPython.

En 2005, tanto Robert Kern como Fernando Pérez intentaron construir un sistema notebook. Desafortunadamente, el prototipo no era utilizable.

Anvanzado dos años en el futuro, el equipo de IPython siguió trabajando y, en 2007, volvieron a intantar implementar un sistema tipo notebook. En octubre de 2010, había un prototipo de un notebook web, y en el verano de 2011 se incorporó este prototipo a la red y se lanzó con la versión 0.12 el 21 de diciembre de 2011. En los años siguientes, el equipo recibió varios premios, como el Advancement of Free Software que recibió Fernando Pérez el 23 de marzo de 2013 y el Jolt Productivity Award que recibió el equipo, así como el financiamiento que recibió el proyecto de fundaciones como la Alfred P. Sloan Foundations, entre otras.

Por último, en 2014, Project Jupyter comenzó como un proyecto derivado de IPython. IPython es ahora el nombre del backend de Python, que también se conoce como kernel. Recientemente, se presentó a la comunidad la próxima generación de Jupyter Notebooks, la cual se llama JupyterLab.

Después de todo esto, es posible que se pregunte dónde se originó la idea de un notebook online o cómo lo plantearon en un inicio los creadores.

Una breve investigación sobre la historia de estos notebooks muestra que Fernando Pérez y Robert Kern estaban trabajando en un notebook al mismo tiempo que se encontraba en progreso el notebook Sage. En este caso, el notebook Sage se basó en los diseños de los notebooks de Google.

Por lo que se refiere a la idea de un notebook, parece que tanto Fernando Pérez, como William Stein (uno de los creadores del notebook Sage), confirmaron ser ávidos usuarios de los notebooks de Mathematica y las hojas de trabajo de Maple. Los notebooks de Mathematica fueron creados como una interfaz o GUI en 1988 por Theodore Gray.

El concepto de un notebook que contiene texto ordinario, cálculos y gráficos, definitivamente no era algo innovador.

Además, los desarrolladores tuvieron un contacto cercano entre sí y esto, junto con otros intentos fallidos de GUI para IPython y el uso de "AJAX" = web applications, que no requerían que los usuarios actualizaran toda la página cada vez que se hace algo, fueron otras dos motivaciones para que el equipo de William Stein comenzara a desarrollar los notebooks Sage.

Si quieres conocer más detalles, consulta los relatos personales de Fernando Pérez y William Stein sobre la historia de sus notebooks. Alternativamente, puede leer más sobre la historia y la evolución de los notebooks IPython a Jupyter aquí.

JeshuaNomics

JeshuaNomics - DataScience es una web de divulgación donde se puede encontrar material formativo en ciencia de datos y programación estadística (R, Python y SQL).

Publicar un comentario (0)
Artículo Anterior Artículo Siguiente