Info
Content

Capítulo 2-4º | Chapter 2-4º

Cuaderno Jupyter / Jupyter Notebook


Jupiter-labpreview.png


Fig. I A. C2.4.1-  Crédito imág (Jupyter). URL: https://jupyter.org/


Ir al índice principal del libro Go to the main index of the book

Contenidos

Contents

2.4.1.- Introducción

2.4.1.- Introduction

2.4.2.- ¿Qué es Jupyter Notebook?

2.4.2.- What is Jupyter Notebook?

2.4.3.- ¿En qué se diferencia Jupyter Notebook de JupyterHub y JupyterLab?

2.4.3.- How is Jupyter Notebook different from JupyterHub and JupyterLab?

2.4.4.- ¿Para qué se utiliza Jupyter Notebook?

2.4.4.-  What is Jupyter Notebook used for?

2.4.5.- ¿Cómo funciona Jupyter Notebook?

2.4.5.- How does Jupyter Notebook work?

2.4.6.- Documentación Jupyter Notebook. Versión 7.0.0.dev0.(Fecha 31.08.2019)

 

2.4.6.- Jupyter Notebook Documentation. Release 7.0.0.dev0. (Date 31.08.2019)

 


| Autor / Author: Juan Antonio Lloret Egea | Miembro de la Alianza Europea para la IA / Member to the European AI Alliance |https://orcid.org/0000-0002-6634-3351|© 2019. Licencia de uso y distribución / License for use and distribution: [ Los estados de la inteligencia artificial (IA) | The states of artificial intelligence (AI) ] creative commons CC BY-NC-ND |ISSN 2695-3803|| Escrito / Writed: 14/07/2019. Actualizado / Updated: 19/08/2019 |


2.4.1.- Introducción | Introduction

El nombre del proyecto “Jupyter” proviene de unir los 3 lenguajes de programación de núcleo Julia, Python y R.

Jupyter Notebook es una aplicación web de código abierto que le permite crear y compartir documentos que contienen código en vivo, ecuaciones, visualizaciones y texto narrativo. Los usos incluyen: limpieza y transformación de datos, simulación numérica, modelado estadístico, visualización de datos, aprendizaje automático y mucho más. (Jupyter Home).


[English]

The name of the “Jupyter” project comes from joining the 3 core programming languages Julia, Python and R.

The Jupyter Notebook is an open-source web application that allows you to create and share documents that contain live code, equations, visualizations and narrative text. Uses include: data cleaning and transformation, numerical simulation, statistical modeling, data visualization, machine learning, and much more. (Jupyter Home).



Fig. I A. C2.4.2- Tutorial del cuaderno de Jupyter | Introducción a Jupyter Notebook/ Jupyter Notebook Tutorial | Introduction to Jupyter Notebook. Crédito imág (Edureka). URL: https://youtu.be/fiQTb7-rCPo


2.4.2.- ¿Qué es Jupyter Notebook? | What is Jupyter Notebook?

Jupyter Notebook es una aplicación cliente-servidor lanzada en 2015 por la organización sin ánimo de lucro Proyecto Jupyter. Permite crear y compartir documentos weben formato JSON que siguen un esquema versionado y una lista ordenada de celdas de entrada y de salida. Estas celdas albergan, entre otras cosas, código, texto (en formato Markdown), fórmulas matemáticas y ecuaciones, o también contenido multimedia (Rich Media). El programa se ejecuta desde la aplicación web cliente que funciona en cualquier navegador estándar. El requisito previo es instalar y ejecutar en el sistema el servidor Jupyter Notebook. Los documentos creados en Jupyter pueden exportarse, entre otros formatos, a HTML, PDF, Markdown o Python y también pueden compartirse con otros usuarios por correo electrónico, utilizando Dropbox o GitHub o mediante el visor integrado de Jupyter Notebook.

Los dos componentes principales de Jupyter Notebook son un conjunto de núcleos (Interpreter) y el Dashboard. Cada núcleo o kernel es un motor de ejecución para un lenguaje que se encarga de procesar las solicitudes y devolver las respuestas apropiadas. El kernel por defecto es IPython, un intérprete de líneas de comandos que permite trabajar con Python. Gracias a los 50 kernels restantes, es posible trabajar también con otros lenguajes como C++, R, Julia, Ruby, JavaScript, CoffeeScript, PHP o Java. Por un lado, el Dashboard (panel de control) funciona como una interfaz de administración de cada uno de los kernels y, por otro, como un centro de control desde donde es posible crear nuevos documentos o abrir proyectos existentesC2.4-1.

Jupyter Notebook está disponible bajo una licencia BSD modificada, por lo que cualquier usuario puede usarlo gratuitamente.


[English]

Jupyter Notebook is a client-server application launched in 2015 by the non-profit organization Jupyter Project. It allows you to create and share web documents in JSON format that follow a versioned scheme and an ordered list of input and output cells. These cells house, among other things, code, text (in Markdown format), mathematical formulas and equations, or also multimedia content (Rich Media). The program runs from the client web application that works in any standard browser. The prerequisite is to install and run the Jupyter Notebook server on the system. Documents created in Jupyter can be exported, among other formats, to HTML, PDF, Markdown or Python and can also be shared with other users by email, using Dropbox or GitHub or through the integrated viewer of Jupyter Notebook.

The two main components of Jupyter Notebook are a set of cores (Interpreter) and the Dashboard. Each kernel or kernel is an execution engine for a language that is responsible for processing requests and returning appropriate responses. The default kernel is IPython, a command line interpreter that allows you to work with Python. Thanks to the remaining 50 kernels, it is also possible to work with other languages ​​such as C ++, R, Julia, Ruby, JavaScript, CoffeeScript, PHP or Java. On the one hand, the Dashboard (control panel) functions as an administration interface for each of the kernels and, on the other, as a control center from which it is possible to create new documents or open existing projectsC2.4-1.

Jupyter Notebook is available under a modified BSD license, so any user can use it for free



Fig. I A. C2.4.3- Computación de alto rendimiento con Python: Introducción a IPython y Jupyter Notebook | High-Performance Computing with Python: Introduction to IPython and Jupyter Notebook. Crédito imág (cscsch). URL: https://youtu.be/RMzZRIxSwkk


2.4.3.- ¿En qué se diferencia Jupyter Notebook de JupyterHub y JupyterLab? | How is Jupyter Notebook different from JupyterHub and JupyterLab?

Jupyter Notebook no es la única aplicación de código abierto que ofrece el Proyecto Jupyter: JupyterHub y JupyterLab son dos servicios adicionales que ofrece el equipo de desarrollo y que están estrechamente vinculados al entorno de trabajo interactivo para el desarrollo de código. JupyterHub es un servidor con proxy multiusuario que interconecta varias instancias Jupyter Notebook. Puede estar alojado en la nube o en nuestro propio hardware y lo que permite es utilizar un entorno compartido del Notebook. El administrador del servidor se encarga de gestionar el acceso compartido a cada uno de los documentos según considere oportuno (se puede implementar un método de autenticación) y el resto de los usuarios individuales pueden concentrarse por completo en realizar sus tareas. Se puede encontrar información detallada sobre cómo instalar y alojar JupyterHub en el repositorio GitHub oficial del entorno multiusuarioC2.4-1.


[English]

Jupyter Notebook is not the only open source application offered by the Jupyter Project: JupyterHub and JupyterLab are two additional services offered by the development team and that are closely linked to the interactive working environment for code development. JupyterHub is a server with multi-user proxy that interconnects several Jupyter Notebook instances. It can be hosted in the cloud or on our own hardware and what it allows is to use a shared environment of the Notebook. The server administrator is responsible for managing the shared access to each of the documents as he deems appropriate (an authentication method can be implemented) and the rest of the individual users can concentrate completely on performing their tasks. Detailed information on how to install and host JupyterHub can be found in the official GitHub repository of the multi-user environmentC2.4-1.



Fig. I A. C2.4.4- JupyterHub: una "descripción general del explicador de cosas" | JupyterHub: A "things explainer overview". Crédito imág (PyData). URL: https://youtu.be/4GJFNQBB26s


JupyterLab es el sucesor oficial de Jupyter Notebook. Las diferencias entre ambos residen en que JupyterLab ofrece más opciones de personalización e interacción y en él es más sencillo aún implementar extensiones. Además de los editores de texto, terminales y otros componentes que pueden abrirse y visualizarse al mismo tiempo que los documentos de Notebook, la nueva interfaz de usuario, gracias a su nuevo diseño, incluye también accesos directos a Google Drive y otros servicios en la nube, nuevas opciones en el menú y atajos de teclado para que el trabajo en el entorno de código sea aún más fácil.


[English]

JupyterLab is the official successor of Jupyter Notebook. The differences between the two are that JupyterLab offers more customization and interaction options and it is even easier to implement extensions. In addition to the text editors, terminals and other components that can be opened and displayed at the same time as Notebook documents, the new user interface, thanks to its new design, also includes shortcuts to Google Drive and other cloud services , new menu options and keyboard shortcuts to make working in the code environment even easier.



Fig. I A. C2.4.5- JupyterLab: la interfaz web Jupyter de próxima generación | JupyterLab: The Next Generation Jupyter Web Interface. Crédito imág (InfoQ). URL:https://youtu.be/ctOM-Gza04Y 


2.4.4.- ¿Para qué se utiliza Jupyter Notebook? | What is Jupyter Notebook used for?

Jupyter Notebook proporciona un entorno pensado para satisfacer necesidades concretas y ajustarse al flujo de trabajo de la ciencia de datos y la simulación numérica. En una sola interfaz, los usuarios pueden escribir, documentar y ejecutar código, visualizar datos, realizar cálculos y ver los resultados. Concretamente, la fase de prototipado incluye la ventaja de que el código se organiza en celdas independientes, es decir, es posible probar bloques concretos de código de forma individual. Gracias a que existen muchos kernels o núcleos adicionales, Jupyter no se limita al lenguaje de programación Python, lo que aporta muchísima flexibilidad a la hora de crear código y de hacer análisis. Algunos de los principales usos que se da a Jupyter Notebook:

1.-Depuración de datos: distinguir entre los datos que son importantes y los que no lo son al ejecutar un análisis de big data.

2.-Modelización estadística: método matemático para estimar la probabilidad de distribución de una característica concreta.

3.-Creación y entrenamiento de modelos de aprendizaje automático: diseño, programación y entrenamiento de modelos basados en aprendizaje automático.

4.-Visualización de datos: representación gráfica de datos para visualizar con claridad patrones, tendencias, interdependencias, etc.


[English]

Jupyter Notebook provides an environment designed to meet specific needs and adjust to the workflow of data science and numerical simulation. In a single interface, users can write, document and execute code, visualize data, perform calculations and view results. Specifically, the prototyping phase includes the advantage that the code is organized in independent cells, that is, it is possible to test specific blocks of code individually. Thanks to the fact that there are many kernels or additional cores, Jupyter is not limited to the Python programming language, which provides a lot of flexibility when creating code and doing analysis. Some of the main uses that are given to Jupyter Notebook:

1.-Debugging data: distinguish between the data that is important and those that are not when executing a big data analysis.

2.-Statistical modeling: mathematical method to estimate the probability of distribution of a specific characteristic.

3.-Creation and training of machine learning models: design, programming and training of models based on machine learning.

4.-Data visualization: graphical representation of data to clearly visualize patterns, trends, interdependencies, etc.


2.4.5.- ¿Cómo funciona Jupyter Notebook? | How does Jupyter Notebook work?

Primero tiene que instalar la aplicación cliente-servidor del entorno de código en su sistema (o en la nube). El único requisito es tener instalado también la versión actualizada de Python. Por esta razón, el equipo de Jupyter recomienda descargar la distribución Anaconda que incluye Jupyter Notebook y Python, además de otros paquetes de software para ciencia de datos y cálculos científicos. Tras la instalación, se puede iniciar el servidor del Notebook utilizando la línea de comando y luego el Dashboard en el navegador que prefiera mediante el URL 'http://localhost:8888'.


[English]

You first have to install the client-server application from the code environment on your system (or in the cloud). The only requirement is to also have the updated Python version installed. For this reason, the Jupyter team recommends downloading the Anaconda distribution that includes Jupyter Notebook and Python, as well as other software packages for data science and scientific calculations. After installation, you can start the Notebook server using the command line and then the Dashboard in the browser of your choice using the URL 'http: // localhost: 8888'.



Fig. I A. C2.4.6- Instale Python con Anaconda: Jupyter Notebook y Spyder / Install Python  with Anaconda: Jupyter Notebook and Spyder. (InfoQ). URL: https://youtu.be/LrMOrMb8-3s


Los proyectos de nueva creación contienen al principio un único campo de entrada vacío. Mediante la barra del menú se pueden añadir nuevos campos, importar bibliotecas o incrustar widgets. Además, en la barra hay botones que permiten ejecutar y detener los códigos ya finalizados, guardar o exportar el documento completo y seleccionar el kernel subyacente.Cuando trabajamos con un documento de Jupyter Notebook podemos crear en todo momento “checkpoints” o puntos de referencia para guardar el estatus en ese preciso instante.

En la página de inicio oficial de Jupyter puede probar Jupyter Notebook sin tener que instalarlo C2.4-1.


*Documentación | Documentation: https://jupyter.org/documentation


**Cuaderno Jupyter para principiantes: un tutorial | Jupyter Notebook for Beginners: A Tutorial: https://www.dataquest.io/blog/jupyter-notebook-tutorial/


2.4.6.- Documentación Jupyter Notebook. Versión 7.0.0.dev0. (Fecha 31.08.2019) | Jupyter Notebook Documentation. Release 7.0.0.dev0. (Date 31.08.2019)

 


Fig. I A. C2.4.7- Jupyter Notebook Documentation. Release 7.0.0.dev0. URL: https://buildmedia.readthedocs.org/media/pdf/jupyter-notebook/latest/jupyter-notebook.pdf


Bibliografía  | Bibliography


[C2.4-1] 1&1 IONOS. (28 de febrero, 2019). Jupyter Notebook: documentos web para análisis de datos, código en vivo y mucho más. [Recuperado (18/08/2019) de https://www.ionos.es/digitalguide/paginas-web/desarrollo-web/jupyter-notebook/ ]


© 2019. Licencia de uso y distribución / License for use and distribution: [ Los estados de la inteligencia artificial (IA) | The states of artificial intelligence (AI) ] creative commons CC BY-NC-ND |ISSN 2695-3803|

Back to top