Instalar Anaconda te da acceso a conda, Python y miles de otras herramientas populares. Instala automáticamente más de 300 paquetes listos para el trabajo en Data Science.
Anaconda Navigator proporciona una interfaz gráfica de usuario: Anaconda Desktop para interactuar con conda, sin utilizar la línea de comandos. Si prefiere trabajar desde la línea de comandos, puede interactuar con conda directamente a través de Anaconda Prompt.
Manejo de entornos
El entorno (base) NO es para proyectos, úsalo solamente para la gestión de conda y tareas globales. El proceso de instalación de conda crea un entorno llamado base, donde se instala conda. Sin embargo, al comenzar un nuevo proyecto, se recomienda crear un nuevo entorno. Esto facilita el mantenimiento y la reproducibilidad de los entornos, además de mantener su estabilidad.
Crear un nuevo entorno
conda create --name <ENV_NAME> <PACKAGE>=<VERSION> <PACKAGE> <PACKAGE>Puedes añadir paquetes al entorno especificando o no la versión. Ejemplo:
conda create --name hello-env python=3.14 pandas beautifulsoup4 Activar un entorno
conda activate <ENV_NAME>Cambiar entre entornos y visualizar entornos existentes
conda info --envs
conda activate <ENV_NAME>Bloquear un entorno
Bloquear un entorno crea un entorno completamente especificado, con todos los paquetes utilizados en el proyecto y sus dependencias configuradas a una versión específica. Para bloquear tu proyecto, necesitas conda-project instalado el paquete en el entorno que deseas bloquear. Instala el paquete ejecutando los siguientes comandos:
conda activate <ENV>
conda install conda-projectSi tu proyecto no contiene un archivo, environment.yml créalo ejecutando el siguiente comando:
conda-project initA continuación, puedes bloquear el entorno de tu proyecto ejecutando el siguiente comando:
conda-project lockAl bloquear tu proyecto, se genera un archivo conda-lock.default.yml que puedes exportar para compartirlo con otros.
Compartir un entorno
Compartir tu entorno con otra persona le permite usar conda para recrear tu entorno en su máquina. Para compartir un entorno y sus paquetes de software, debe exportar las configuraciones de su entorno a un archivo .yml en un entorno que este activado con el comando.
conda env export > environment.ymlEl archivo se guarda en su directorio de trabajo y se puede compartir.
Desactivar un entorno
Lo más recomendable es desactivar el entorno cuando hayas terminado de trabajar en él. Cuando desactivas un entorno, conda vuelve al entorno que estaba activado anteriormente. Para desactivar su entorno activo, ejecute el siguiente comando:
conda deactivateEliminar un entorno
Para eliminar un entorno, ejecute el siguiente comando. Si, por cualquier motivo, necesita eliminar manualmente un directorio de entorno, no utilice el explorador de archivos . Si lo hace, eliminará el contenido del entorno y liberará espacio en su equipo, pero la ruta del entorno permanecerá en su archivo environments.txt.
conda remove --name <ENV_NAME> --allGestión de Canales
En el ecosistema de Conda, los canales son repositorios remotos donde se alojan los paquetes. Los tipos de canales más comunes:
- Defaults: Es el canal oficial gestionado por Anaconda. Contiene paquetes probados y validados para ser estables y compatibles entre sí.
- Conda-Forge: Es un canal comunitario (el más grande y popular). Al ser mantenido por la comunidad, suele tener versiones más actualizadas de las librerías y una variedad mucho mayor de paquetes que el canal por defecto.
- Canales específicos: Existen repositorios especializados para nichos científicos o técnicos, como
bioconda(para bioinformática).
Conda permite tener varios canales activos a la vez, pero sigue un orden jerárquico. Si un mismo paquete (por ejemplo, pandas) está disponible en dos canales distintos, Conda lo descargará del que tenga mayor prioridad (el que aparezca primero en tu configuración).
Visualización de los canales disponibles
Para ver qué canales están configurados actualmente en conda ejecute el siguiente comando:
conda config --show channelsConfiguración de canales
Conda lee la configuración de sus canales desde el archivo .condarc. Para añadir, eliminar o reordenar canales, deberá editar este archivo. Para encontrarlo utilice el comando:
conda config --show-sourcesPuedes añadir o eliminar canales de tu lista channels: usando comandos de conda en o editando manualmente tu el archivo .condarc.
conda config <FLAG> channels <CHANNEL>| Flag | Acción |
|---|---|
--add | Agrega un canal al principio de channels:. |
--prepend | Agrega un canal al principio de channels:. |
--append | Agrega un canal al final de channels:. |
--remove | Elimina un canal de channels:. |
Ejemplo:
conda config --add channels conda-forgeConfigurar valores predeterminados
La entrada defaults en tu lista de channels: es un alias especial. Cuando conda detecta busca en los canales listados default_channels: en orden descendente. Este también se puede configurar utilizando comandos de conda o editando manualmente .condarc.
conda config --add default_channels <CHANNEL>Reemplaza <CHANNEL> con la URL del canal que deseas agregar.
Instalación de paquetes desde un canal específico
El uso de la sintaxis de dos puntos dobles instala el paquete desde el canal especificado, pero instala las dependencias de ese paquete desde los canales que aparecen en el .condarc siguiendo el orden de prioridad de los canales.
conda install <CHANNEL>::<PACKAGE>Gestión de paquetes
Buscando paquetes conda
La función de búsqueda de Conda le permite buscar a través de canales para comprobar si un paquete específico está disponible, qué versiones existen en diferentes canales o qué ya está instalado en su entorno local.
conda search <PACKAGE>Buscar un canal específico
conda search <CHANNEL>::<PACKAGE>Búsqueda en entornos locales
Utilice la bandera --envs para buscar un paquete en sus entornos locales:
conda search --envs <PACKAGE>Instalar paquetes
Para instalar un solo paquete, ejecute el siguiente comando:
conda install <PACKAGE>Para instalar un paquete en un entorno que no sea su entorno activo actual, especifique el nombre del entorno:
conda install <PACKAGE> --name <ENVIRONMENT>Especificar un canal:
conda install <CHANNEL>::<PACKAGE>Especificación de versiones de paquetes
Por defecto, al instalar paquetes desde la línea de comandos, conda recupera las versiones más recientes de los paquetes solicitados (y sus dependencias) que sean compatibles con el entorno actual.
conda install <PACKAGE>=<VERSION>Actualización de paquetes
Para actualizar un solo paquete, ejecute el siguiente comando:
conda update <PACKAGE>Cuando actualizas un paquete, conda también puede actualizar otros paquetes del entorno para mantener la compatibilidad, o instalar nuevos paquetes necesarios para las dependencias actualizadas. Esto ayuda a evitar que tu entorno se dañe debido a cambios en las dependencias. Para evitar que conda actualice cualquier paquete que no sea el que especifiques, usa la bandera --no-update-deps
Actualizar varios paquetes
conda update <PACKAGE> <PACKAGE> <PACKAGE>Especificar un canal para las actualizaciones de paquetes
conda update <PACKAGE> --override-channels --channel <CHANNEL>Actualizar todos los paquetes
Es posible que la ejecución de este comando no actualice todos los paquetes de un entorno determinado a sus últimas versiones. Si la última versión de un paquete es incompatible con otros paquetes instalados en el entorno, conda solo actualizará ese paquete a la última versión compatible .
conda update --allUsando pip en Conda
La mayoría de los paquetes populares del repositorio PyPI están disponibles en el repositorio público de Anaconda , Anaconda.org o conda-forge . Sin embargo, es posible que necesite usar pip si un paquete o una versión específica no está disponible a través de conda. Instalar paquetes usando pip modifica tu entorno conda. Sin embargo, conda desconoce estas modificaciones. Como resultado, cuando conda intenta modificar el entorno posteriormente, existe una alta probabilidad de que surjan conflictos de dependencias entre los paquetes controlados por conda y los paquetes de pip no controlados, lo que puede provocar un entorno dañado.
Comprender conda y pip
Aunque algunas funcionalidades de conda y pip se solapan (en concreto, la capacidad de instalar paquetes de Python), fueron diseñadas y deben usarse con fines diferentes.
Pipes la herramienta recomendada por la Autoridad de Empaquetado de Python para instalar paquetes del Índice de Paquetes de Python (PyPI).Conda, por otro lado, es un gestor de paquetes y entornos multiplataforma que instala y gestiona paquetes tanto del repositorio público de Anaconda como de Anaconda.org.
Otras diferencias clave entre conda y pip incluyen:
| conda | pip | |
|---|---|---|
| Formato de distribución del paquete | Binarios | Wheels o fuente |
| ¿Requiere compiladores? | No | Sí |
| Tipos de paquetes | Cualquiera (Python, R, C++, etc.) | Solo Python |
| ¿Creación de entorno? | Sí, incorporado | No, requiere virtualenv o venv. |
| ¿Resolución de dependencias? | Sí | No |
| Fuentes de paquetes | Repositorio de Anaconda, Anaconda.org | PyPI |
Crear un entorno conda que incluya paquetes pip
Para crear un entorno estable que incluya paquetes pip, Anaconda recomienda escribir un archivo environment.yml y luego construir un entorno a partir de ese archivo. Aunque este método requiere más tiempo de configuración, ofrece varias ventajas:
- Control sobre el orden de compilación, las versiones y los canales de los paquetes.
- Actualizaciones de entorno sencillas
- Mayor reproducibilidad y facilidad para compartir mediante un archivo
.yml.
Al escribir el archivo, asegúrese de agregar pip y sus dependencias al final, ya que conda crea los entornos en el orden en que aparecen. Ejemplo:
name: myenv # Nombre del entorno
dependencies: # Lista de los paquetes que se incluyen
- python=3.12
- bokeh>=2.4.2
- flask
- pip # Install pip en el entorno
- pip: # Incluir los paquetes pip al final
- Flask-TestingLa documentación oficial de conda incluye más información sobre cómo crear archivos de entorno manualmente , así como especificaciones de coincidencia de paquetes .
Creación de un entorno a partir de un archivo environment.yml
Para crear un entorno a partir de un archivo environment.yml, ejecute el siguiente comando desde el directorio que contiene el archivo:
conda env create --file environment.ymlActualizar un entorno con un archivo environment.yml
Si alguna vez necesita agregar paquetes a su entorno, realizar cambios en las versiones de los paquetes o eliminar paquetes, actualice el archivo environment.yml y luego vuelva a construir el entorno ejecutando el siguiente comando desde el directorio que contiene el archivo:
conda env update --file environment.yml --prune--prune elimina cualquier paquete huérfano del entorno.
Uso de pip install en un entorno conda
Debido a que conda no reconoce las actualizaciones de entorno realizadas por pip, el uso de pip en su entorno debe ser la última acción que se realice al construir el entorno.
conda install <PACKAGE> <PACKAGE> pipNo ejecute pip install en su entorno base. Cree un entorno conda independiente para aislar los cambios.
Solucionador de dependencias
Una de las principales características de conda es su capacidad para gestionar paquetes de software y sus dependencias. La gestión de dependencias puede resultar compleja, sobre todo cuando un paquete tiene muchas dependencias. Conda utiliza un algoritmo llamado
solucionador de dependencias , que determina qué versiones de qué paquetes deben instalarse para satisfacer (o resolver) todas las dependencias sin conflictos de versiones.
Gestión de errores del solucionador
Aunque el solucionador de conda está diseñado para instalar paquetes y sus dependencias sin generar conflictos de versiones, estos pueden ocurrir. Este tutorial explicará los posibles escenarios de conflicto del solucionador y cómo solucionarlos.
Gestionar Python en entornos conda
Por defecto, al instalar o actualizar paquetes en un ambiente, conda recupera las versiones más recientes posibles del/de los paquete(s) solicitado(s) y sus dependencias que sean compatibles con el entorno actual.
Algunos paquetes (o versiones de paquetes) solo son compatibles con ciertas versiones de Python. Si intentas instalar un paquete que no es compatible con la versión de Python que usas en tu entorno, conda no lo instalará.
En este caso, suele ser mejor crear un nuevo entorno que use la versión de Python requerida, junto con los demás paquetes que necesitas.Para crear un nuevo entorno con una versión específica de Python y todos los paquetes que necesitas, ejecuta el siguiente comando:
conda create --name <ENVIRONMENT> python=<VERSION> <PACKAGE> <PACKAGE> <PACKAGE>Integraciones de conda
Consulta esta página para integrar conda con:
- Docker
- Authenticated Docker builds
- Snowflare Snowpark
- TensorFlow
Más de Anaconda
- Herramientas Anaconda: diseñadas para optimizar tus flujos de trabajo de ciencia de datos, aprendizaje automático e inteligencia artificial.
- Plataforma Anaconda (Nube): Anaconda Platform proporciona una plataforma segura y repositorio centralizado. Dónde puedes controlar el acceso de tu organización a paquetes software de código abierto y realizar un seguimiento de las vulnerabilidades del software.
- Data Science & AI Workbench: Workbench es una plataforma de ciencia de datos escalable, segura y preparada para entornos empresariales que permite a los equipos gestionar los activos de ciencia de datos, colaborar e implementar sus proyectos de ciencia de datos.
Flujo de trabajo
Crea el nuevo entorno para el proyecto y actívalo
conda create --name <ENV_NAME>
conda activate <ENV_NAME>Instala los paquetes necesarios para el proyecto
conda install pandas scipy numpy matplotlib seaborn scikit-learn Trabajar con JupyterLab – conda
Para que el entorno aparezca en la lista de opciones de tu cuaderno, ejecuta este comando y luego puedes seleccionarlo en la lista de kernels disponibles.
python -m ipykernel install --user --name=<ENV_NAME> --display-name "NAME_ALIAS"
Trabajar con Visual Studio Code – conda
Presiona Ctrl+Mayús+P, busca Python: Select Interpreter y elige tu entorno de la lista. Puedes instalar la extensión nb_conda_kernels en tu entorno base (conda install nb_conda_kernels), la cual detectará automáticamente todos tus entornos de Conda que tengan ipykernel instalado.