PackagesNotFoundError: les packages suivants ne sont pas disponibles à partir des chaînes actuelles:

123

Je suis un peu nouveau sur Python. Je l'ai utilisé dans de nombreux projets, mais je n'ai pas vraiment eu besoin de m'éloigner de sa configuration standard. J'essaye d'installer de nouveaux packages pour accéder aux fonctions nécessaires à une mission universitaire. Lorsque j'essaye d'installer, j'obtiens ce qui suit:

(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

...

Et un tas d'autres canaux similaires à celui ci-dessus.

J'ai cherché une solution, mais je n'ai rien trouvé de substantiel. J'ai vu que cela pouvait être un problème avec Windows, sur lequel je l'utilise. Passé cela, je n'ai aucune idée de ce qui se passe.

Gardez à l'esprit que je ne comprends pas vraiment comment fonctionnent les chaînes et les packages, donc toute idée à ce sujet serait également excellente.

Sunafegon
la source
Note à tous ceux qui liront ceci: n'utilisez pas l'environnement de base pour tous vos projets, ou pas du tout, vraiment.
AMC

Réponses:

129

Essayez d' ajouter Conda-forge canal à votre liste de canaux avec cette commande:
conda config --append channels conda-forge. Il indique à conda de regarder également sur le canal conda-forge lorsque vous recherchez des paquets. Vous pouvez ensuite simplement installer les deux packages avecconda install slycot control .

Les canaux sont essentiellement des serveurs sur lesquels les gens peuvent héberger des packages et le conda-forge géré par la communauté est généralement un bon point de départ lorsque les packages ne sont pas disponibles via les canaux standard. J'ai vérifié et le slycot et le contrôle semblent y être disponibles.

Max S.
la source
2
J'ai essayé ce que vous avez suggéré et je suis arrivé à ceci: {Environnement de résolution: échec de PackagesNotFoundError: Les packages suivants ne sont pas disponibles sur les canaux actuels: - slycot Canaux actuels: - repo.continuum.io/pkgs/main/win-64 - repo.continuum .io / pkgs / main / noarch } Et plus de liens avec ceux de conda-forge en bas. J'ai lu sur certains forums que slycot n'est actuellement pris en charge que pour Linux et OSX. Pas sûr de la validité de ces affirmations cependant.
Sunafegon
1
Eh bien, si le package n'est pas pris en charge par Windows, vous n'avez pas de chance, je le crains. La seule autre chose qui me vient à l'esprit est d'essayer de l'installer via pip ( pip install ...). Cela installera le package dans votre répertoire conda mais utilisera à la place le gestionnaire de packages intégré de Python. Parfois, les packages ne sont disponibles que via pip.
Max S.
J'ai dû ajouter conda config --add channels loopbiopour installer gtk2 ( github.com/loopbio/gtk2-feedstock )
ezchx
4
C'est généralement une bonne idée de se limiter aux conda config --appendchaînes. Cela le mettra à une priorité inférieure à celle des chaînes standard et ne recherchera que si le paquet n'est pas trouvé ailleurs. --addle met en haut de la liste des chaînes, donc condainstallera autant de packages à partir du canal personnalisé que possible ... d'après mon expérience, cela peut devenir compliqué.
Max S.
A parfaitement fonctionné. Exécutez la solution @MaxS avant de créer un environnement et d'installer la conda create --name <env_name> --file <requirements.txt>
configuration
24

As-tu essayé:

pip install <package>

ou

conda install -c conda-forge <package>
mpour
la source
11
Cela n'aide pas les gens à comprendre PackagesNotFoundError, ou quoi que ce soit du tout, d'ailleurs. -c conda-forgeN'est-ce pas une incantation magique qui résoudra tout, et il existe des différences importantes entre l'utilisation de Conda et de pip comme gestionnaire de paquets dans un environnement Conda. Franchement, c'est bâclé et paresseux.
AMC le
4

Merci, Max S. conda-forge a également travaillé pour moi.

scikit-learn sur Anaconda-Jupyter Notebook.

Mise à niveau de mon scikit-learn de 0.19.1 à 0.19.2 dans anaconda installé sur Ubuntu sur l'instance de VM Google:

Exécutez les commandes suivantes dans le terminal:

Tout d'abord, vérifiez les packages disponibles avec les versions

conda list    

Il affichera les packages et leurs versions installées dans la sortie:

scikit-learn              0.19.1           py36hedc7406_0  

Passez à la version 0.19.2 juillet 2018.

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

Maintenant, vérifiez la version installée correctement ou non?

conda list 

La sortie est:

scikit-learn              0.19.2          py36_blas_openblasha84fab4_201  [blas_openblas]  conda-forge

Remarque: n'utilisez pas la commande pip si vous utilisez Anaconda ou Miniconda

J'ai essayé les commandes suivantes:

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

Il installera les packages requis également apparaîtra dans le conda list mais lorsque vous essayez d'importer ce package, cela ne fonctionnera pas.

Sur le site Web http://scikit-learn.org/stable/install.html, il est mentionné comme suit: Avertissement Pour mettre à niveau ou désinstaller scikit-learn installé avec Anaconda ou conda, vous ne devez pas utiliser le pip.

Yogesh
la source
1
Cette réponse n'est pertinente que pour un package spécifique dans votre environnement à un mouvement particulier dans le temps, et il est peu probable que quelqu'un d'autre profite.
AMC
1

J'essayais d'installer le package fancyimpute pour l'imputation mais il n'y avait pas de chance. Mais quand j'ai essayé les commandes ci-dessous, il a été installé: Commandes:

conda update conda
conda update anaconda
pip install fancyimpute 

(ici, j'essayais de donner la commande conda install fancyimpute qui n'a pas fonctionné)

ajay krishna saxena
la source
Cette réponse n'est pertinente que pour un package spécifique dans votre environnement à un mouvement particulier dans le temps, et il est peu probable que quelqu'un d'autre profite.
AMC
0

Même moi, je faisais face au même problème, mais je l'ai résolu en

conda install -c conda-forge pysoundfile

en l'important

import soundfile 
yunus
la source
2
Cette réponse n'est pertinente que pour un package spécifique dans votre environnement à un mouvement particulier dans le temps, et il est peu probable que quelqu'un d'autre profite.
AMC
0

Si votre environnement conda de base est actif ...

  • auquel cas "(base)" s'affichera probablement au début ou à l'invite de commande de votre terminal.

... et pip est installé dans votre environnement de base ...

  • ce que c'est: $ conda list | grep pip

... puis installez le package introuvable simplement en $ pip install <packagename>

marquage
la source