Python

Recuperar el resultado de una celda en Jupyter

Al trabajar en un Notebook de Jupiter es posible que después de ejecutar un comando que requiere bastante tiempo nos demos cuenta de que no se ha asignado el resultado a una variable. Podríamos pensar que la única solución sería modificar el código y volver a ejecutarlo. Pero existe una solución mejor, se puede recuperar los resultados de cualquier celda en Jupyter con un simple truco.

Obtener el resultado de una celda en Jupyter

Supongamos que se ha ejecutado el siguiente código en un notebook.

Celda de Jupyter en la que no se han guardado los resultados de la operación

En la celda se han definido dos variables y sumado el valor, pero no se ha asignado el resultado a una nueva variable. Para solucionar el problema en este ejemplo lo más sencillo es asignar la operación a una variable y volver a ejecutar la celda. Pero no es así si lo que se ejecuta en la celda es el entrenamiento de un modelo que requiere varios minutos para finalizar. Tener que volver a ejecutar la celda para acceder al resultado es una pérdida de tiempo.

Para evitar tener que volver a ejecutar el código nos podemos fijar en que todas las celdas comienzan por In[] y los resultados por Out[]. Lo que hace referencia a dos variables de IPython en las que se guardan respectivamente las entradas y salidas de todas las celdas ejecutadas. Así para recuperar el resultado de una celda en Jupyter solamente se debe escribir en la siguiente celda Out[1].

Se puede obtener y asignar el resultado de una celda de Jupyter a una variable

En un caso genérico solamente se debe reemplazar 1 por el valor de la celda que se desea recuperar.

Recuperar el código de una celda

Otra utilidad de este conjunto de variables de IPython es la posibilidad de recuperar el código de una celda. Incluso aquellas que se han borrado del Notebook. De forma análoga a como se ha realizado anteriormente se puede acceder al contenido de In para obtener el código que se ha ejecutado anteriormente.

Se puede obtener el código de una celda de Jupyter a partir de la variable In

Las variables In y Out de IPython

En base a lo visto es importante no definir elementos con los nombres In o Out cuando se está trabajando con IPython, tanto en un Notebook como en la terminal. Aunque se puede seguir trabajando después de definir los elementos, se pierde una importante herramienta para revisar todo el trabajo.

Conclusiones

Las variables In y Out son dos propiedades de IPython que nos pueden ahorrar mucho tiempo cuando se trabaja en un Notebook. Permitiendo recuperar tanto el código como el resultado de una celda en Jupyter, incluso de aquellas que se han borrado. Con lo que es posible evitar la necesidad de ejecutar varias veces el mismo código o incluso recuperar códigos o resultados eliminados.

Imagen de Dave Francis en Pixabay

¿Te ha parecido de utilidad el contenido?

Daniel Rodríguez

Share
Published by
Daniel Rodríguez

Recent Posts

Por qué migrar tus proyectos TypeScript a ES Modules en 2026

Durante años, CommonJS (require/module.exports) ha sido la forma por defecto de organizar módulos en Node.js,…

9 horas ago

Método del codo: interpretación correcta y limitaciones

Cuando usas k-means tienes que decidir algo incómodo de entrada: cuántos grupos, , vas a…

2 días ago

Errores comunes al interpretar resultados estadísticos

La estadística no suele fallar en los cálculos: falla en la interpretación. El test está…

1 semana ago

Dashboard CLV: cuatro modelos, un mismo dataset, conclusiones muy distintas

Los artículos anteriores de esta serie cubrieron cuatro formas de mirar el valor del cliente:…

1 semana ago

Curiosidad: Por qué la criptografía habla siempre de Alice y Bob

Quien se acerca a la criptografía descubre enseguida a dos personajes que aparecen en casi…

2 semanas ago

Desbalanceo de Clases en Credit Scoring: Por Qué Usamos Ponderación en lugar de Undersampling

En credit scoring el desbalanceo de clases es la norma, no la excepción. En una…

2 semanas ago

This website uses cookies.