Domina la Ciencia de Datos: Guía Definitiva para Usar Jupyter Notebook en VS Code (Con Entornos Conda)


Los cuadernos de Jupyter (o Jupyter Notebooks) se han convertido en el estándar de oro para la ciencia de datos y la investigación computacional. Su capacidad para combinar código ejecutable, visualizaciones, texto narrativo y ecuaciones en un solo documento los hace increíblemente poderosos para desarrollar, comunicar y compartir proyectos de datos.

Tradicionalmente, se usan a través de un navegador web. Pero, ¿y si pudiéramos potenciar esa experiencia con todas las ventajas de un editor de código moderno como Visual Studio Code? En esta guía, te mostraré cómo hacer precisamente eso: configurar y usar Jupyter Notebooks directamente en VS Code, evitando las limitaciones del navegador y aprovechando al máximo tu flujo de trabajo.

¿Qué es un Jupyter Notebook y por qué deberías usarlo?

Antes de entrar en materia, aclaremos el concepto. Un «cuaderno» o notebook es un documento interactivo que integra código y su resultado en un solo lugar. Puedes escribir y ejecutar fragmentos de código (como Python), y justo debajo ver la salida: tablas, gráficos, estadísticas, etc. Lo mejor es que también puedes añadir texto enriquecido (con formato Markdown) para explicar tu razonamiento, incluir fórmulas matemáticas o enlazar a fuentes externas.

En resumen: es un diario de trabajo vivo, transparente y reproducible.

Para cualquier persona que trabaje con datos, usar notebooks acelera el flujo de trabajo, facilita la comunicación de resultados y es una habilidad fundamental en la industria. Y lo mejor de todo, al ser parte del proyecto de código abierto Jupyter, es completamente gratuito.

Aunque Jupyter soporta múltiples lenguajes, en esta guía nos centraremos en Python, el más popular y para el cual VS Code ofrece la mejor integración.

¿Por qué usar Jupyter Notebooks en VS Code en lugar del Navegador?

Usar la extensión de Jupyter en VS Code transforma tu experiencia de desarrollo. La interfaz de cuaderno nativa de VS Code ofrece ventajas significativas:

  • Entorno de Desarrollo Unificado: Disfruta de todas las funcionalidades de un editor de código profesional mientras trabajas en tu notebook: resaltado de sintaxis avanzado, autocompletado inteligente (IntelliSense), refactorización de código, y soporte para extensiones como VIM, linters o formateadores de código.
  • Herramientas de Productividad: Aplica funciones de edición avanzada directamente en tus celdas, como búsqueda y reemplazo global, plegado de código o edición en múltiples líneas (multi-cursor).
  • Navegación y Gestión de Archivos: VS Code te da una visión de proyecto completa. Puedes navegar fácilmente entre tu notebook y otros archivos del proyecto (.py, .csv, .json), usar el control de versiones (Git) integrado, y tener una vista de esquema con la tabla de contenidos de tu notebook.
  • Velocidad y Eficiencia: Los archivos .ipynb se cargan casi instantáneamente. Además, VS Code incluye un visor de diferencias (diff) para notebooks, lo que facilita enormemente la revisión de cambios en el código y los resultados.
  • Depuración Avanzada: Una de las características estrella es «Ejecutar por Línea», que te permite depurar tu código paso a paso dentro del propio notebook.

Requisito Fundamental: Instalación de Anaconda (Conda)

Atención: Este es un paso crucial. Para que todo funcione de manera fluida en VS Code y evitar errores de versiones o de reconocimiento de entornos, es altamente recomendable (y para muchos usuarios, necesario) instalar Anaconda. Anaconda incluye Conda, un potente gestor de paquetes y entornos virtuales que usaremos para aislar nuestros proyectos.

¿Por qué es tan importante?

  • Aislamiento: Podrás tener un proyecto con Python 3.9 y librerías antiguas, y otro con Python 3.11 y las últimas versiones, sin que uno rompa al otro.
  • Evita errores en VS Code: Muchos problemas al seleccionar kernels o al importar librerías en VS Code se solucionan simplemente usando entornos Conda bien configurados.

Descarga e Instalación de Anaconda

  1. Descarga: Ve a la página oficial de Anaconda y descarga el instalador para tu sistema operativo (Windows, macOS, Linux).
  2. Ejecuta el Instalador: Una vez descargado, ejecuta el archivo.
  3. Acepta la Licencia: Lee y acepta los términos de la licencia.
  4. Tipo de Instalación: Selecciona «Solo para mí» (recomendado) a menos que necesites instalarlo para todos los usuarios del equipo.
  5. Ubicación de Instalación: ¡Muy importante! Elige una carpeta de destino cuya ruta no contenga espacios ni caracteres especiales (como tildes o eñes). Por ejemplo: C:\anaconda3 en Windows o /Users/tu_usuario/anaconda3 en macOS. Esto previene errores futuros.
  6. Opciones Avanzadas:
    • Marca la opción que dice «Registrar Anaconda como mi Python predeterminado» (a menos que tengas otra instalación de Python que quieras conservar como principal).
    • Deja las demás opciones por defecto.
  7. Instalación: Haz clic en «Instalar». El proceso puede tomar varios minutos. Puedes marcar la casilla «Mostrar detalles» para ver qué paquetes se están instalando.
  8. Finalización: Una vez terminado, verás una pantalla de «Gracias por instalar Anaconda». Ya puedes cerrar el instalador.

¡Felicidades! Ya tienes Conda instalado en tu sistema. Ahora podemos proceder a configurar VS Code.

Configuración Rápida de VS Code y Jupyter

Paso 1: Instalar VS Code
Si aún no lo tienes, descarga e instala Visual Studio Code desde su página oficial.

Paso 2: Instalar la Extensión de Jupyter
Abre VS Code, ve al panel de extensiones (icono de cuadrícula en la barra lateral izquierda o Ctrl+Shift+X) y busca «Jupyter». Instala la extensión desarrollada por Microsoft (ms-toolsai.jupyter). Esta extensión ya incluye por defecto mapas de teclado similares a los de Jupyter y visualizadores para gráficos (Plotly, etc.).

Paso 3: Crear o Abrir un Notebook
Puedes crear un nuevo archivo de notebook de varias formas:

  • Ve a la paleta de comandos (Ctrl+Shift+P), escribe «Crear: Nuevo cuaderno Jupyter» y selecciona la opción.
  • O simplemente crea un nuevo archivo con la extensión .ipynb.

Ya tienes un notebook funcionando en VS Code. Ahora, vamos a usar Conda para crear el «motor» (kernel) de Python que ejecutará el código de forma aislada.

Gestionando Entornos de Ejecución con Conda

Ahora que tenemos Anaconda instalada y VS Code listo, vamos a crear un entorno virtual con las librerías científicas esenciales (numpy, matplotlib, scipy) y conectarlo a nuestro notebook.

Paso 1: Abrir la Terminal Correcta
Abre la terminal integrada de VS Code (Ctrl+ñ o View > Terminal). Como ya instalamos Anaconda, el comando conda debería ser reconocido automáticamente.

Paso 2: Crear un Nuevo Entorno Conda
Ejecuta el siguiente comando para crear un entorno llamado mi_entorno con Python 3.10 (una versión muy estable):

conda create -n mi_entorno python=3.10

Confirma la creación escribiendo y cuando el sistema te lo pida.

Paso 3: Activar el Entorno
Una vez creado, actívalo con:

conda activate mi_entorno

Verás que el prompt de la terminal ahora comienza con (mi_entorno), indicando que estás dentro.

Paso 4: Instalar las Librerías Esenciales
Con el entorno activado, instala los paquetes que necesitas. El paquete ipykernel es fundamental para que Jupyter pueda reconocer tu entorno.

conda install numpy matplotlib scipy ipykernel

De nuevo, confirma con y.

Paso 5: Registrar el Entorno en Jupyter
Este paso crea un «registro» para que VS Code y Jupyter sepan que este entorno existe y pueden usarlo como kernel.

python -m ipykernel install --user --name mi_entorno --display-name "Python (mi_entorno)"

Paso 6: Seleccionar el Kernel en VS Code
Vuelve a tu notebook en VS Code. En la esquina superior derecha, haz clic en el texto que indica el kernel (probablemente dirá «Python 3…»). Se abrirá una lista. Busca y selecciona la opción que dice «Python (mi_entorno)». Si no aparece, prueba a reiniciar VS Code.

Paso 7: ¡A Codificar!
Ya puedes ejecutar celdas. Prueba con este pequeño script para verificar que todo funciona:

import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import linregress
print("¡Entorno configurado correctamente!")
print(f"NumPy versión: {np.__version__}")
# Un pequeño test gráfico
x = np.array([1, 2, 3, 4, 5])
y = np.array([2, 4, 5, 4, 5])
plt.scatter(x, y)
plt.title("Gráfico de prueba")
plt.show()

Trabajando con Python y Más Allá

Si te centras en Python, asegúrate de tener también instalada la Extensión de Python (ms-python.python) para disfrutar de la mejor experiencia de edición. La combinación de ambas extensiones es imbatible.

Característica Destacada: «Ejecutar por Línea»

Una de las herramientas más útiles para depurar es «Ejecutar por Línea». Con una celda de código seleccionada, puedes presionar F10 o hacer clic en el botón «Ejecutar por Línea» (un icono de depuración) en la barra de la celda. Esto iniciará una sesión ligera de depuración, ejecutando tu código línea por línea y actualizando el «Explorador de Variables» en tiempo real para que veas cómo cambia el valor de tus datos. Para avanzar a la siguiente línea, pulsa Ctrl+Enter. Para detener la ejecución, haz clic en el botón de parada.

Conclusión

Combinar la potencia narrativa de Jupyter Notebooks con la robustez y flexibilidad de Visual Studio Code es un cambio radical en el flujo de trabajo de ciencia de datos. Has aprendido a configurar este entorno desde cero (comenzando por la base sólida de Anaconda), a gestionar tus proyectos con entornos Conda aislados y a aprovechar funciones exclusivas como «Ejecutar por Línea». Ahora tienes las herramientas para desarrollar proyectos de datos de forma más profesional, organizada y eficiente. ¡Es hora de ponerlo en práctica!

Como ejecutar un cuaderno de Jupyter Notebook en Visual Studio Code


En efecto gracias a la extensión de Jupyter para Visual Studio Code podemos ejecutar nuestros cuadernos en python de Jupyter Notebook desde el interfaz de Visual Studio Code, editor que como probablemente amigo lector sabrà es gratuito y uno de los más potentes IDEs hasta la fecha.

Jupyter Notebook es una herramienta increíblemente poderosa para desarrollar y presentar proyectos de ciencia de datos de forma interactiva. Este post intentara guiarle de cómo usar Jupyter Notebooks para proyectos de ciencia de datos y cómo configurarlo en su máquina local pero en vez de usar un navegador lo cual nos genera ciertos problemas ( versionado, restauración de código , etc.) lo usaremos desde el potente IDE de Visual Studio Code.

jupyter-notebook las mejores herramientas gratuitas de ciencia de datos

Pero primero: ¿qué es un “cuaderno”?

Un cuaderno integra código y su salida en un solo documento que combina visualizaciones, texto narrativo, ecuaciones matemáticas y otros medios enriquecidos. En otras palabras: es un documento único en el que puede ejecutar código, mostrar el resultado y también agregar explicaciones, fórmulas, gráficos y hacer que su trabajo sea más transparente, comprensible, repetible y compartible. 

El uso de Notebooks es ahora una parte importante del flujo de trabajo de la ciencia de datos en empresas de todo el mundo. Si su objetivo es trabajar con datos, el uso de una computadora portátil acelerará su flujo de trabajo y facilitará la comunicación y el intercambio de resultados. 

Lo mejor de todo es que, como parte del proyecto de código abierto  Jupyter , los cuadernos de Jupyter son completamente gratuitos. Puede descargar el software  solo o como parte del kit de herramientas de ciencia de datos de Anaconda .

Aunque es posible utilizar muchos lenguajes de programación diferentes en Jupyter Notebooks, nos centraremosen Python, ya que es el caso de uso más común. (Entre los usuarios de R, R Studio  tiende a ser una opción más popular).Jupyter Notebooks también puede actuar como una plataforma flexible para familiarizarse con los pandas e incluso con Python, como se verá en este tutorial.


Las extensiones de Visual Studio Code proporcionan soporte básico de cuaderno para los kernels de lenguaje que son compatibles con los cuadernos Jupyter hoy en día. Muchos kernels de lenguaje funcionarán sin ninguna modificación. Para habilitar las características avanzadas, pueden ser necesarias modificaciones en las extensiones de lenguaje de VS Code.

La extensión Jupyter incluye por defecto las extensiones Jupyter Keymaps y Jupyter Notebook Renderers. La extensión Jupyter Keymaps proporciona mapas de teclado consistentes con Jupyter y la extensión Jupyter Notebook Renderers proporciona renderizadores para tipos MIME como latex, plotly, vega, y similares. Ambas extensiones pueden deshabilitarse o desinstalarse. Y por cierto, la extensión está disponible en varios idiomas: de, en, es, fa, fr, it, ja, ko-kr, nl, pl, pt-br, ru, tr, zh-cn, zh-tw

La Extensión Jupyter utiliza el soporte de cuadernos incorporado de VS Code. Esta interfaz de usuario ofrece una serie de ventajas a los usuarios de cuadernos:

  • Soporte inmediato de la amplia gama de funciones básicas de edición de código de VS Code, como la salida en caliente, la búsqueda y el reemplazo, y el plegado de código.
  • Extensiones del editor como VIM, coloración de corchetes, linters y muchas más están disponibles mientras se edita una celda.
  • Profunda integración con el banco de trabajo general y con las funciones basadas en archivos de VS Code, como la vista de esquema (tabla de contenidos), las migas de pan y otras operaciones.
  • Tiempos de carga rápidos para los archivos Jupyter notebook (.ipynb). Cualquier archivo de cuaderno se carga y renderiza lo más rápidamente posible, mientras que las operaciones relacionadas con la ejecución se inicializan entre bastidores.
  • Incluye una herramienta de diferencias para cuadernos, que facilita la comparación y la visualización de las diferencias entre las celdas de código, los resultados y los metadatos.
  • Extensibilidad más allá de lo que proporciona la extensión Jupyter. Las extensiones ahora pueden añadir su propio lenguaje o tiempo de ejecución específico a los cuadernos, como los cuadernos interactivos de .NET y Gather
  • Aunque la extensión de Jupyter viene con un amplio conjunto de los renderizadores más utilizados para la salida, el mercado admite renderizadores personalizados instalables para que el trabajo con tus cuadernos sea aún más productivo. Para empezar a escribir los tuyos propios, consulta la documentación de la api de renderizadores de VS Code.

Trabajar con Python


Si quiere trabajar con Python sólo tiene que asegurarte de que utiliza la última versión de la Extensión Python para disfrutar de la asociación conjunta de las Extensiones Python y Juypter.

Por favor, siga las instrucciones de Léame de la Extensión Python para empezar y visite la Documentación de Python para aprender más sobre cómo la Extensión Python y Jupyter trabajan juntas para proporcionar una experiencia óptima de cuadernos Python.

Ejecutar por línea


Para iniciar una sesión de depuración ligera y ejecutar celdas de código línea por línea en cuadernos de Python, pulse F10 mientras selecciona una celda o haga clic en el botón Ejecutar por línea de la barra de herramientas de la celda. También admite núcleos remotos.

Una vez que inicies una sesión de Ejecutar por Línea, aparecerá el Explorador de Variables y los valores de las variables se actualizarán a medida que itera a través de su código.

Para recorrer el resto de la celda durante una sesión Run by Line pulse Ctrl+Enter. Para parar, puede hacer clic en el botón de interrupción en el lado izquierdo de la celda.


Por cierto como ya se ha comentado ,la Extensión Jupyter soporta otros lenguajes además de Python como Julia, R y C#.

Estsos serian los pasos a seguir para un Inicio rápido


Para crear un nuevo cuaderno, abra la paleta de comandos (Windows: Ctrl + Shift + P, macOS: Command + Shift + P) y seleccione el comando «Crear: Nuevo cuaderno Jupyter».

Selecciona su kernel haciendo clic en el selector de kernel en la parte superior derecha del cuaderno o invocando el comando «Notebook: Seleccionar núcleo de cuaderno».(Notebook: Select Notebook Kernel)

Cambie el idioma de la celda haciendo clic en el selector de idioma o invocando el comando «Cuaderno: Cambiar idioma de la celda». (Notebook: Change Cell Language)

Comandos útiles


Abre la paleta de comandos (Comando+Mayúsculas+P en macOS y Ctrl+Mayúsculas+P en Windows/Linux) y escribe uno de los siguientes comandos:

CommandDescription
Create: New Jupyter NotebookCreate: New Jupyter Notebook
Notebook: Select Notebook KernelSelect or switch kernels within your notebook
Notebook: Change Cell LanguageChange the language of the cell currently in focus
Jupyter: Export to HTML Jupyter: Export to PDFCreate a presentation-friendly version of your notebook in HTML or PDF

Para ver todos los comandos disponibles de Jupyter Notebook, abra la paleta de comandos y escriba Jupyter o Notebook.

Teclas de contexto para los enlaces de teclas


Puede utilizar las teclas de contexto de la extensión en cláusulas «cuando». He aquí un ejemplo:

  {
    "key": "ctrl+i",
    "command": "jupyter.runAndDebugCell",
    "when": "!jupyter.webExtension"
  }

Ese keybinding establece que el comando jupyter.runAndDebugCell debe asignarse a CTRL+I cuando no está en la jupyter.webExtension.

La lista completa de teclas de contexto se puede encontrar aquí: https://github.com/microsoft/vscode-jupyter/wiki/Extensibility-for-other-extensions#context-keys-for-keybindings

Mas información:


Aprenda más sobre las ricas características de la extensión Jupyter:

IntelliSense: Edite su código con autocompletado, navegación por el código, comprobación de sintaxis y mucho más. (mas info en https://code.visualstudio.com/docs/python/editing#_autocomplete-and-intellisense)

Cuadernos Jupyter: Cree y edite cuadernos Jupyter, añada y ejecute celdas de código/marcadas, haga trazados, cree versiones de su cuaderno aptas para la presentación exportándolas a HTML o PDF y mucho más. (mas info en https://code.visualstudio.com/docs/python/jupyter-support)

Descarga extension Jupyter para Visual Studio Code:Mas información en https://marketplace.visualstudio.com/items?itemName=ms-toolsai.jupyter