【问题标题】:Conda-installed python3.6 sees a wrong version of conda-installed scikit-learnconda-installed python3.6 看到 conda-installed scikit-learn 版本错误
【发布时间】:2019-10-12 00:12:56
【问题描述】:

可悲的是,我一直在与 python 环境作斗争。目前的问题是我最近安装的 anaconda 的 python 没有看到 anaconda 安装的最新的 scikit-learn。

详情:

23:11 victoria current$conda --version
conda 4.3.30
23:11 victoria current$source activate py36scikit
(py36scikit) 23:11 victoria current$which python
/home/.../opt/anaconda3-201611/envs/py36scikit/bin/python
(py36scikit) 23:11 victoria current$conda update scikit-learn
Fetching package metadata ...........
Solving package specifications: .

# All requested packages already installed.
# packages in environment at /home/bojar/opt/anaconda3-201611/envs/py36scikit:
#
scikit-learn              0.21.1           py36hd81dba3_0  
(py36scikit) 23:12 victoria current$python
Python 3.6.8 |Anaconda, Inc.| (default, Dec 30 2018, 01:22:34) 
[GCC 7.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import sklearn
>>> print (sklearn.__version__)
0.19.1

有人能解释一下为什么正确的 conda 安装 python 没有看到 conda 安装的 scikit-learn 0.21.1,而是从某个地方看到一些旧版本 0.19.1?

更新:即使使用新安装的 conda 4.6.11-py37_0(包含 scikit-learn-0.21.1 的新 conda 环境)也会出现同样的问题。环境中的相应 python 仍报告 sklearn 为 0.19.1。

【问题讨论】:

    标签: python scikit-learn anaconda conda


    【解决方案1】:

    为我工作...

    听起来很像与其他包的碰撞。

    也许找出活动 sklearn 模块的确切路径会对您有所帮助:

    import sklearn
    print(sklearn.__file__)
    

    【讨论】:

    • 这是一个很好的提示,它表明 conda 安装的 python 使用了我的~/.local/lib/python3.6/site-packages/sklearn/__init__.py 中的 sklearn。如果我把它移开,最终会使用 conda 安装的 sklearn。所以从技术上讲,这是一个解决方案,但我仍然想知道为什么 .local(完全使用并且)优先。我觉得这很不直观,我认为 conda 会覆盖一切。 .local 不在我的环境变量中。
    • 嗯..这就是我的智慧结束的地方 :D 我只是认为这可以给你一个初步的方向;)
    猜你喜欢
    • 1970-01-01
    • 2016-08-18
    • 2022-11-16
    • 1970-01-01
    • 2016-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多