PackagesNotFoundError:当前渠道无法使用以下软件包:

Sun*_*gon 83 install channel conda python-control

我对Python有些新意.我在一系列项目中使用过它,但实际上并不需要偏离其标准设置.我正在尝试安装一些新的软件包来访问大学任务所需的功能.当我尝试安装时,我得到以下内容:

(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

...
Run Code Online (Sandbox Code Playgroud)

还有一堆类似上面的其他渠道.

我一直在寻找解决方案,但没有发现任何重大问题.我已经看到它可能是Windows的一个问题,这就是我正在使用它.过去我不知道发生了什么.

请记住,我并不真正了解渠道和套餐的运作方式,因此对此问题的任何见解都会很棒.

Max*_* S. 84

尝试使用此命令将conda-forge通道添加到通道列表中:conda config --append channels conda-forge.它告诉conda 在搜索包时也会查看conda-forge通道.然后你可以简单地安装两个包conda install slycot control.

频道基本上是人们托管套餐的服务器,社区驱动的conda-forge通常是通过标准频道无法获得套餐的好地方.我检查了,slycot控制似乎都在那里.

  • 只需`conda config --append`频道通常是一个好主意.这将使它的优先级低于标准通道,只有在其他地方找不到包时才会查看.`--add`把它放在频道列表的顶部,所以`conda`将尽可能多地从自定义频道安装包......根据我的经验,这可能会变得混乱. (3认同)
  • 我尝试了你的建议并得出了这个:{解决环境:失败的PackagesNotFoundError:当前渠道无法使用以下软件包: - slycot当前频道: - https://repo.continuum.io/pkgs/main/win-64 - https://repo.continuum.io/pkgs/main/noarch}更多链接与底部的conda-forge.我在一些论坛上看到slycot目前仅支持linux和OSX.但不确定这些声明的有效性. (2认同)
  • 好吧,如果 Windows 不支持该软件包,我担心你就不走运了。唯一想到的就是尝试通过 pip 安装它(`pip install ...`)。这会将包安装在 conda 目录中,但使用 Python 的内置包管理器。有时软件包只能通过 pip 获得。 (2认同)

mpo*_*our 16

你有没有尝试过:

pip install <package>
Run Code Online (Sandbox Code Playgroud)

要么

conda install -c conda-forge <package>
Run Code Online (Sandbox Code Playgroud)

  • 命令:`conda install -c conda-forge &lt;package&gt;` 对我来说比:`conda config --appendchannels conda-forge` 效果更好,这会导致 conda 进入无限的*“解决环境”*循环。 (7认同)

Yog*_*esh 8

谢谢,Max S. conda-forge 也为我工作。

Anaconda-Jupyter Notebook 上的 scikit-learn。

在 Google VM 实例上的 Ubuntu 上安装的 anaconda 中将我的 scikit-learn 从 0.19.1 升级到 0.19.2:

在终端中运行以下命令:

首先,检查可用的软件包版本

conda list    
Run Code Online (Sandbox Code Playgroud)

它将在输出中显示软件包及其安装的版本:

scikit-learn              0.19.1           py36hedc7406_0  
Run Code Online (Sandbox Code Playgroud)

升级到 0.19.2 2018 年 7 月版。

conda config --append channels conda-forge
conda install scikit-learn=0.19.2
Run Code Online (Sandbox Code Playgroud)

现在检查是否正确安装了版本?

conda list 
Run Code Online (Sandbox Code Playgroud)

输出是:

scikit-learn              0.19.2          py36_blas_openblasha84fab4_201  [blas_openblas]  conda-forge
Run Code Online (Sandbox Code Playgroud)

注意:如果您使用的是 Anaconda 或 Miniconda,请不要使用 pip 命令

我尝试了以下命令:

!conda update conda 
!pip install -U scikit-learn
Run Code Online (Sandbox Code Playgroud)

它将安装所需的包也将显示在conda list但当尝试导入该包时它不会工作。

在网站http://scikit-learn.org/stable/install.html上提到:警告要升级或卸载与 Anaconda 或 conda 一起安装的 scikit-learn,您不应该使用 pip。


siv*_*ivi 6

可能是您的 condas 频道需要唤醒电话......

conda update --all
Run Code Online (Sandbox Code Playgroud)

对我来说它奏效了。更多信息:https : //www.anaconda.com/keeping-anaconda-date/


小智 5

我试图安装fancyimpute包进行插补,但没有运气。但是当我尝试下面的命令时,它被安装了:命令:

conda update conda
conda update anaconda
pip install fancyimpute 
Run Code Online (Sandbox Code Playgroud)

(在这里我试图给出命令 conda install Fantasyimpute 没有用)