Python

Almacenar variables en Jupyter

Durante una sesión de trabajo en un Notebook de Jupyter los diferentes resultados que se obtengan se pueden almacenar las variables y recuperarlos posteriormente. Aunque, una vez se cierre el Notebook o se reinicie el núcleo (kernel) de IPython, los valores se pierden ya que solamente están almacenados en memoria. Cuando se necesita persistencia de datos se pueden almacenar estos en archivos externos. Para lo que se puede usar archivos CSV, Microsoft Excel, JSON o de texto plano. Aunque si se desea guardar los valores entre sesiones la mejor opción es almacenar variables en Jupyter con el comando mágico de IPython %store.

El comando mágico %store de IPython

En IPython el comando mágico %store permite almacenar y recuperar cualquier variable que exista en una sesión en una base de datos. La cual se almacena en la carpeta ~/.ipython/profile_default/db/autorestore/. Esto es, es una base de datos de IPython y, por lo tanto, los valores aquí almacenados se pueden recuperar en cualquier sesión de IPython, incluidas las que se inician en un Notebook.

Para almacenar una variable solamente se debe escribir un comando como el siguiente en una celda:

%store variable

Reemplazando variable por el nombre de la variable que se desea guardar en la base de datos. El día que se necesite recuperar los valores de la variable solamente se debe escribir en una celda el siguiente comando:

%store -r variable

Lo que recuperará el valor original, sea este un número, una lista, un diccionario, un DataFrame o cualquier otro objeto.

Otros usos del comando mágico %store

Además de las funciones básicas de %store guardar y recuperar variables también dispone de otras funciones para gestionar los datos almacenados. Algunas de las funciones que se pueden realizar con este comando son:

  • Guardar múltiples variables en la base de datos de IPython: %store var1 var2
  • Actualización de los valores de una o varias variables: %store -r var1
  • Listado de todas las variables almacenadas en la base de datos junto a sus valres: %store
  • Borrado de una o varias variables de la base de datos: %store -d var1
  • Borrado de todas las variables de la base de datos: %store -z
  • Guardado de las variables en un archivo %store var1 > var1.txt

En todos los casos se debe reemplazar los valores var1 y var2 por el nombre de las variables que se deseen guardar.

Conclusiones

El comando mágico %store de IPython permite almacenar las variables en Jupyter de una forma fácil y eficiente. Evitando la necesidad de gestionar archivos. Por lo que es una solución óptima para guardar valores temporales (por ejemplo, los resultados de un Notebook que se necesita cerrar) o valores que se deben guardar entre diferentes sesiones (por ejemplo, constantes o parámetros de configuración de acceso a recursos externos como bases de datos o APIs). Aunque es importante notar que los datos no se almacenan de forma segura, cualquiera con acceso al disco los podría leer, por lo que no es sitio adecuado para almacenar credenciales.

Imagen de Miguel Á. Padriñán en Pixabay

¿Te ha parecido de utilidad el contenido?

Daniel Rodríguez

Share
Published by
Daniel Rodríguez

Recent Posts

Data Lake y Data Warehouse: diferencias, usos y cómo se complementan en la era del dato

En la era del dato, las organizaciones se enfrentan al reto de gestionar volúmenes masivos…

3 días ago

Documentar tu API de Express con TypeScript usando OpenAPI (Swagger)

En la serie Creación de una API REST con Express y TypeScript construimos una API…

5 días ago

Curiosidad: El sesgo de supervivencia, o por qué prestar atención sólo a los que “llegaron” puede engañarte

Durante la Segunda Guerra Mundial, la Fuerza Aérea de Estados Unidos quería reforzar sus aviones…

1 semana ago

Cómo abrir una ventana de Chrome con tamaño y posición específicos desde la línea de comandos en Windows

En muchas situaciones —ya sea para grabar un tutorial, tomar capturas de pantalla profesionales, probar…

2 semanas ago

La Paradoja del Cumpleaños, o por qué no es tan raro compartir fecha de nacimiento

Imagínate en una sala con un grupo de personas, por ejemplo, en una oficina, un…

2 semanas ago

Programador de tareas de Windows: Guía definitiva para automatizar tu trabajo (BAT, PowerShell y Python)

En el trabajo diario con ordenadores, es común encontrarse con tareas repetitivas: realizar copias de…

3 semanas ago

This website uses cookies.