PackagesNotFoundError: los siguientes paquetes no están disponibles en los canales actuales:

123

Soy algo nuevo en Python. Lo he usado en un montón de proyectos, pero realmente no he necesitado desviarme de su configuración estándar. Estoy intentando instalar algunos paquetes nuevos para acceder a las funciones necesarias para una asignación universitaria. Cuando intento instalar, obtengo lo siguiente:

(base) C:\Anaconda2\Jupyter>conda install -c python-control -c cyclus slycot control
Solving environment: failed

PackagesNotFoundError: The following packages are not available from current channels:

  - slycot
  - control

Current channels:

  - https://conda.anaconda.org/python-control/win-64
  - https://conda.anaconda.org/python-control/noarch
  - https://conda.anaconda.org/cyclus/win-64

...

Y un montón de otros canales similares al anterior.

He estado buscando una solución, pero no he encontrado nada sustancial. He visto que puede ser un problema con Windows, que es en lo que lo estoy usando. Más allá de eso, no tengo ni idea de lo que está pasando.

Tenga en cuenta que realmente no entiendo cómo funcionan los canales y paquetes, por lo que cualquier conocimiento sobre ese asunto también sería genial.

Sunafegon
fuente
Nota para cualquiera que lea esto: no use el entorno base para todos sus proyectos, o en absoluto, en realidad.
AMC

Respuestas:

129

Trate de añadir el Conda-forja canal a la lista de canales con este comando:
conda config --append channels conda-forge. Le dice a conda que también busque en el canal conda-forge cuando busque paquetes. Luego, simplemente puede instalar los dos paquetes con conda install slycot control.

Los canales son básicamente servidores en los que las personas pueden alojar paquetes y el conda-forge impulsado por la comunidad suele ser un buen lugar para comenzar cuando los paquetes no están disponibles a través de los canales estándar. Lo comprobé y tanto el slycot como el control parecen estar disponibles allí.

Max S.
fuente
2
Probé lo que sugirió y llegué a esto: {Entorno de resolución: paquetes fallidosNotFoundError: Los siguientes paquetes no están disponibles en los canales actuales: - slycot Canales actuales: - repo.continuum.io/pkgs/main/win-64 - repo.continuum .io / pkgs / main / noarch } Y más enlaces con los de conda-forge en la parte inferior. He leído en algunos foros que actualmente slycot solo es compatible con Linux y OSX. Sin embargo, no estoy seguro de la validez de esas afirmaciones.
Sunafegon
1
Bueno, si el paquete no es compatible con Windows, me temo que no tendrás suerte. Lo único que me viene a la mente es intentar instalarlo a través de pip ( pip install ...). Esto instalará el paquete en su directorio conda, pero usará el administrador de paquetes integrado de Python en su lugar. A veces, los paquetes solo están disponibles a través de pip.
Max S.
Tuve que agregar conda config --add channels loopbiopara instalar gtk2 ( github.com/loopbio/gtk2-feedstock )
ezchx
4
Generalmente es una buena idea solo conda config --appendcanales. Esto lo pondrá en una prioridad más baja que los canales estándar y solo buscará allí si el paquete no se encuentra en otro lugar. --addlo coloca en la parte superior de la lista de canales, por condalo que instalará tantos paquetes del canal personalizado como sea posible ... según mi experiencia, esto puede ser complicado.
Max S.
Funcionó perfectamente. Ejecute la solución @MaxS antes de crear un entorno e instalar los requisitos:conda create --name <env_name> --file <requirements.txt>
datalifenyc
24

Has probado:

pip install <package>

o

conda install -c conda-forge <package>
mpour
fuente
11
Esto no ayuda a la gente a entender PackagesNotFoundErrors, ni nada en absoluto, para el caso. -c conda-forgeNo es un encantamiento mágico que arreglará todo, y existen diferencias importantes entre usar Conda y pip como administrador de paquetes en un entorno Conda. Francamente, es descuidado y perezoso.
AMC
4

Gracias, Max S. conda-forge también funcionó para mí.

scikit-learn en Anaconda-Jupyter Notebook.

Actualizando mi scikit-learn de 0.19.1 a 0.19.2 en anaconda instalado en Ubuntu en la instancia de Google VM:

Ejecute los siguientes comandos en la terminal:

Primero, verifique los paquetes disponibles con versiones.

conda list    

Mostrará los paquetes y sus versiones instaladas en la salida:

scikit-learn              0.19.1           py36hedc7406_0  

Actualice a la versión 0.19.2 de julio de 2018.

conda config --append channels conda-forge
conda install scikit-learn=0.19.2

¿Ahora verifique la versión instalada correctamente o no?

conda list 

La salida es:

scikit-learn              0.19.2          py36_blas_openblasha84fab4_201  [blas_openblas]  conda-forge

Nota: No use el comando pip si está usando Anaconda o Miniconda

Intenté seguir los comandos:

!conda update conda 
!pip install -U scikit-learn

Instalará los paquetes requeridos y también se mostrarán en el conda listpero cuando intente importar ese paquete no funcionará.

En el sitio web http://scikit-learn.org/stable/install.html se menciona como: Advertencia Para actualizar o desinstalar scikit-learn instalado con Anaconda o conda, no debe usar el pip.

Yogesh
fuente
1
Esta respuesta solo es relevante para un paquete específico en su entorno en un movimiento particular en el tiempo, y es poco probable que beneficie a nadie más.
AMC
1

Estaba intentando instalar el paquete fancyimpute para la imputación, pero no tuve suerte. Pero cuando probé los siguientes comandos, se instaló: Comandos:

conda update conda
conda update anaconda
pip install fancyimpute 

(aquí estaba tratando de dar el comando conda install fancyimpute que no funcionó)

ajay krishna saxena
fuente
Esta respuesta solo es relevante para un paquete específico en su entorno en un movimiento particular en el tiempo, y es poco probable que beneficie a nadie más.
AMC
0

Incluso yo estaba enfrentando el mismo problema, pero lo resolví

conda install -c conda-forge pysoundfile

mientras lo importa

import soundfile 
Yunus
fuente
2
Esta respuesta solo es relevante para un paquete específico en su entorno en un movimiento particular en el tiempo, y es poco probable que beneficie a nadie más.
AMC
0

Si su entorno base conda está activo ...

  • en cuyo caso "(base)" probablemente se mostrará al inicio o en el símbolo del sistema de su terminal.

... y pip está instalado en su entorno base ...

  • cual es: $ conda list | grep pip

... luego instale el paquete no encontrado simplemente por $ pip install <packagename>

marcado
fuente