Jupyter Notebook [De Cero A Heroe] 2 ...

Iniciado por Andrey, Julio 16, 2018, 12:36:52 AM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Julio 16, 2018, 12:36:52 AM Ultima modificación: Julio 16, 2018, 12:39:41 AM por Andrey

Cuando ejecutó la celda, su salida se mostrará debajo y la etiqueta a la izquierda habrá cambiado de "In [ ]" a "In [1]". El resultado de una celda de código también forma parte del documento, por lo que puede verlo en este artículo. Siempre puede distinguir entre código y celdas de Marcado porque las celdas de código tienen esa etiqueta a la izquierda y las celdas de Margen no. La parte "In" de la etiqueta es simplemente la abreviatura de "Entrada", mientras que el número de etiqueta indica cuándo se ejecutó la celda en el kernel, en este caso la celda se ejecutó primero. Ejecute nuevamente la celda y la etiqueta cambiará In [2] porque ahora la celda fue la segunda en ejecutarse en el kernel. Se aclarará por qué esto es tan útil más adelante.

Desde la barra de menú, haga clic en Insertar y seleccione Insertar celda a continuación para crear una nueva celda de código debajo de la primera y pruebe el siguiente código para ver qué sucede.

Código: php
1 import time
2 time.sleep ( 3 )


Esta celda no produce ningún resultado, pero tarda tres segundos en ejecutarse. Observe cómo Jupyter indica que la celda se está ejecutando al cambiar su etiqueta a "In [1]".

En general, la salida de una celda proviene de cualquier información de texto impresa específicamente durante la ejecución de las celdas, así como del valor de la última línea de la celda, ya sea una variable solita, una llamada a una función u otra cosa. Por ejemplo:

Código: php
1 def  decir_Hola ( destinatario ):
2     return  ' Hola, {} ! ' .format (destinatario)
3
4 decir_Hola ( ' Andrey ' )


'Hola, Andrey!'

Esto lo usaras constantemente en tus propios proyectos, y los veremos más adelante.

Atajos de teclado
Algo que pudo haber observado al ejecutar sus celdas es que su borde se volvió azul, mientras que estaba verde cuando estaba editando. Siempre hay una celda "activa" resaltada con un borde cuyo color denota su modo actual, donde verde significa "modo de edición" y azul es "modo de comando".

Hasta ahora hemos visto cómo ejecutar una celda "Ctrl + Enter", pero hay muchas más. Los atajos de teclado son un aspecto muy popular del entorno Jupyter porque facilitan un flujo de trabajo rápido basado en células. Muchas de estas son acciones que puede llevar a cabo en la celda activa cuando está en modo comando.

A continuación, encontrará una lista de algunos de los atajos de teclado de Jupyter. La lista te dará una buena idea de lo que es posible.

Alterna entre editar y modo de comando con "Esc" y "Enter", respectivamente.

Una vez en modo comando:

Desplácese hacia arriba y hacia abajo de sus celdas con sus teclas "Up" y "Down".
Presione "A" o "B" para insertar una nueva celda encima o debajo de la celda activa.
"M" transformará la celda activa en una celda de reducción.
"Y" configurará la celda activa a una celda de código.
"D + D" ( D dos veces) eliminará la celda activa.
"Z" deshará la eliminación de la celda.
Mantenga Shift presionada y presione "Up" o "Down" para seleccionar varias celdas a la vez.


Con múltiples celdas seleccionadas:

"Shift + M" fusionará su selección.
"Ctrl + Shift + - ", en el modo de edición, dividirá la celda activa en el cursor.
También puede hacer clic y "Shift + Click" en el margen a la izquierda de sus celdas para seleccionarlas.
Pruebe esto en su propio cuaderno. Una vez que hayas jugado con ello, crea una nueva casilla de reducción y aprenderemos cómo formatear el texto en nuestros cuadernos.

Reducción

Markdown (No tienes permitido ver los links. Registrarse o Entrar a mi cuenta) es un lenguaje de marcado ligero y fácil de aprender para dar formato a texto que carece de este. Su sintaxis tiene una correspondencia uno a uno con las etiquetas HTML, por lo que algunos conocimientos previos serían útiles, pero no es un requisito previo. Vamos a cubrir lo básico con un ejemplo rápido.

# Este es un encabezado de nivel 1
## Este es un encabezado de nivel 2
Este es un texto simple que forma un párrafo.
Agregue énfasis a través de ** negrita ** y __negrita__, o * italica * y _italica_
Los párrafos deben estar separados por una línea vacía.
* A veces queremos incluir listas.
* Que se puede sangrar
1. Las listas también pueden ser numeradas.
2. Para listas ordenadas.
[Es posible incluir hipervínculos](No tienes permitido ver los links. Registrarse o Entrar a mi cuenta)

Y finalmente, agregar imágenes es fácil: ![Texto]( No tienes permitido ver los links. Registrarse o Entrar a mi cuenta )

Al adjuntar imágenes, se tienen tres opciones:
Usar una URL para una imagen en la web.
Usar una URL local para una imagen que guardará junto con su computadora portátil, como en el mismo repositorio git.
Agregue un archivo adjunto a través de "Editar> Insertar imagen", esto convertirá la imagen en una cadena y la almacenará dentro de su ".ipynb".
Tenga en cuenta que esto hará que su archivo ".ipynb" sea mucho más grande.
Hay muchos más detalles para Markdown, especialmente en torno a hipervínculos, y también es posible incluir simplemente HTML sin formato. Una vez que se encuentre en los límites de los conceptos básicos anteriores, puede consultar la guía oficial (No tienes permitido ver los links. Registrarse o Entrar a mi cuenta) del creador, John Gruber, en su sitio web.


Núcleos

Detrás de cada computadora portátil se ejecuta un kernel. Cuando ejecuta una celda de código, ese código se ejecuta dentro del kernel y cualquier resultado se devuelve a la celda que se mostrará. El estado del núcleo persiste a lo largo del tiempo y entre las células, pertenece al documento como un todo y no a las celdas individuales.

La mayoría de las veces, el flujo en su notebook será de arriba hacia abajo, pero es común volver a hacer cambios. El orden de ejecución indicado a la izquierda de cada celda, como por ejemplo "In [6]", le permitirá saber si alguna de sus celdas tiene un resultado obsoleto. Y si alguna vez desea reiniciar las cosas, hay varias opciones útiles en el menú Kernel:

Reiniciar: reinicia el núcleo, borrando así todas las variables, etc. que se definieron.
Reiniciar y Borrar Salida: lo mismo que arriba, pero también borrará la salida que se muestra debajo de las celdas de su código.
Reiniciar y ejecutar todo: igual que el anterior, pero también ejecutará todas sus celdas en orden de principio a fin.
Si su kernel está bloqueado alguna vez en un cálculo y desea detenerlo, puede elegir la opción Interupt.

Elegir un kernel

Puede haber notado que Jupyter le da la opción de cambiar kernel, y hay muchas opciones diferentes para elegir. Cuando creabas un nuevo cuaderno desde el tablero seleccionando una versión de Python, en realidad elegías qué kernel usar.

No solo hay núcleos para diferentes versiones de Python, sino también para más de 100 idiomas (No tienes permitido ver los links. Registrarse o Entrar a mi cuenta), incluidos Java, C e incluso Fortran. Los científicos de datos pueden estar particularmente interesados en los núcleos para R (No tienes permitido ver los links. Registrarse o Entrar a mi cuenta) y Julia (No tienes permitido ver los links. Registrarse o Entrar a mi cuenta), así como también para imatlab (No tienes permitido ver los links. Registrarse o Entrar a mi cuenta) y Calysto MATLAB Kernel (No tienes permitido ver los links. Registrarse o Entrar a mi cuenta) para Matlab. El kernel SoS (No tienes permitido ver los links. Registrarse o Entrar a mi cuenta) proporciona soporte multilingüe dentro de un notebook. Cada kernel tiene sus propias instrucciones de instalación, pero es probable que requiera que ejecute algunos comandos en su computadora.


Nombrando tus cuadernos

Antes de comenzar a escribir su proyecto, es probable que desee darle un nombre personalizado. Tal vez de manera un tanto confusa, no puede nombrar ni cambiar el nombre de sus notebooks de la aplicación de la computadora portátil en sí, pero debe usar el tablero o el explorador de archivos para cambiar el nombre del archivo ".ipynb"

Volveremos al panel de control para cambiar el nombre del archivo que creó anteriormente, que tendrá el nombre del archivo de la notebook por defecto: "Untitled.ipynb"

No puede cambiar el nombre de un notebook mientras se está ejecutando, por lo que primero debe cerrarla. La forma más fácil de hacerlo es seleccionar "Archivo> Cerrar y Detener" en el menú del notebook. Sin embargo, también puede cerrar el kernel yendo a "Kernel> Shutdown" desde la aplicación del notebook o seleccionando el notebook en el tablero y haciendo clic en "Shutdown" (ver imagen a continuación).


Luego puede seleccionar su notebook y hacer click en "Cambiar nombre" en los controles del panel.


Tenga en cuenta que cerrar la pestaña del cuaderno en su navegador no "cerrará" su notebook de la misma forma en que lo hará el cierre de un documento en una aplicación tradicional. El kernel de la computadora portátil continuará ejecutándose en segundo plano y debe cerrarse antes de que esté realmente "cerrado", ¡aunque esto es muy útil si cierras accidentalmente tu pestaña o navegador! Si el kernel está cerrado, puede cerrar la pestaña sin preocuparse de si todavía se está ejecutando o no.
Una vez que haya nombrado su computadora portátil, ábrala de nuevo y nos pondremos en marcha.

Guardado y punto de control

Ahora que hemos comenzado, es una buena práctica guardar regularmente. Presionando Ctrl + S guardará su cuaderno llamando al comando "Guardar punto de control", pero ¿qué pasa con este punto de control?
Cada vez que creas una nueva computadora portátil, se crea un archivo de punto de control y tu archivo de computadora portátil; se ubicará dentro de un subdirectorio oculto de la ubicación guardada llamada ".ipynb_checkpoints" y también es un archivo ".ipnb" De forma predeterminada, Jupyter guardará automáticamente su notebook cada 120 segundos en este archivo de punto de control sin alterar el archivo de su notebook principal. Cuando "Guarda punto de control", se actualizan los archivos del cuaderno y del punto de control. Por lo tanto, el punto de control le permite recuperar su trabajo no guardado en caso de un problema inesperado.
Puede volver al punto de control desde el menú a través de "Archivo> Volver al punto de control".

Compartiendo tus cuadernos

Cuando se habla de compartir algún notebook, normalmente hay dos paradigmas que pueden estar considerando. A lo que se refieren normalmente las personas que comparten es el resultado final de su trabajo, lo que significa compartir versiones no interactivas pretransmitidas de sus cuadernos, pero también es posible colaborar en los portátiles con los sistemas de control de versiones de ayuda como Git.

Hay algunas plataformas recientes apareciendo en la web que ofrecen la capacidad de ejecutar Notebooks Jupyter interactivos en la nube.

Antes de compartir

Un bloc de notas compartido aparecerá exactamente en el estado en que estaba cuando lo exporta o lo guarda, incluida la salida de cualquier celda de código. Por lo tanto, para asegurarse de que su notebook esté lista para compartir, hay algunos pasos que debe seguir antes de compartir:

Haga clic en "Celda> Todos los resultados> Borrar"
Haga clic en "Kernel> Restart & Run All"

Espere a que las celdas de código finalicen la ejecución y compruebe que lo hicieron como se esperaba
Esto asegurará que sus cuadernos no contengan salida intermedia, tengan un estado obsoleto y se ejecuten en orden en el momento de compartir.

Exportando notebooks

Jupyter tiene soporte integrado para exportar a HTML y PDF, así como varios otros formatos, que puede encontrar en el menú en "Archivo> Descargar como". Si desea compartir sus cuadernos con un pequeño grupo privado, esta funcionalidad es todo lo que necesita, como a muchos investigadores en instituciones académicas se les da espacio web público o interno, y debido a que se puede exportar un cuaderno a un archivo HTML, Jupyter Notebooks puede ser una forma especialmente conveniente para que ellos compartan sus resultados con sus compañeros.

Pero si compartir archivos exportados no es lo mejor para ti, también existen algunos métodos inmensamente populares de compartir ".ipynb" archivos más directamente en la web.


GitHub

Con la cantidad de cuadernos públicos en GitHub que superan los 1,8 millones para principios de 2018, seguramente es la plataforma independiente más popular para compartir proyectos de Jupyter con el mundo. GitHub tiene soporte integrado para renderizar archivos ".ipynb directamente en repositorios y gists en su sitio web. Si todavía no lo sabe, GitHub es una plataforma de alojamiento de código para el control de versiones y la colaboración para repositorios creados con Git. Necesitará una cuenta para usar sus servicios, pero las cuentas estándar son gratuitas.

Una vez que tenga una cuenta de GitHub, la forma más fácil de compartir un cuaderno en GitHub realmente no requiere nada de Git. Desde 2008, GitHub ha proporcionado su servicio Gist para alojar y compartir fragmentos de código, cada uno de los cuales tiene su propio repositorio. Para compartir un cuaderno usando Gists:

Inicie sesión y busque No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Abra su archivo ".ipynb" en un editor de texto, seleccione todo y copie el JSON dentro.

Pegue el cuaderno JSON en la esencia.

Dale a tu Gist un nombre de archivo, recordando qu agregar ".ipynb" no funcionará.

Haga clic en "Crear gist secreto" o "Crear gist publica".

Esto debería verse de la siguiente manera:


Si crea un Gist público, ahora podrá compartir su URL con cualquier persona, y otros podrán bifurcar y clonar su trabajo.
Un consejo extra para aquellos que usan git es agregar una excepción a su  ".gitignore" para esos ".ipynb_checkpoints" directorios ocultos que  crea Jupyter, para no enviar archivos de punto de control innecesariamente a su repositorio.





Jupyter Notebook De Cero A Heroe [1]
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta




Andrey...


"Es un mundo brutal y peligroso el que hay allá afuera... Pero encontré mi camino. El caos es mi hogar, y me aseguraré de que no escapes de el"...

"Solo se necesita una excusa para cambiar el mundo"

genial ver unas guías de Jupyter, yo lo utilizo bastante, si necesitas colaboración en tu trabajo cuenta conmigo :D!

Saludos!
Nivel 77 No tienes permitido ver los links. Registrarse o Entrar a mi cuenta