【问题标题】:ImportError when importing sklearn导入sklearn时的ImportError
【发布时间】:2020-07-04 15:59:04
【问题描述】:

我开始使用 Python 进行机器学习。所以我正在阅读有关如何开始的教程。文章要求我安装一些必要的库,包括 numpyma​​tplotlibscipypandassklearn,我查看了 PyCharm 解释器设置,它告诉我它已经安装了所有这些设置。但是当我尝试导入它们时。具体来说,sklearn,它会抛出这个错误。

Traceback (most recent call last):
  File "C:/Users/iMacPro 2K19/PycharmProjects/Machine Learning/main.py", line 6, in <module>
    import sklearn
  File "C:\Users\iMacPro 2K19\AppData\Local\Programs\Python\Python37-32\lib\site-packages\sklearn\__init__.py", line 82, in <module>
    from .base import clone
  File "C:\Users\iMacPro 2K19\AppData\Local\Programs\Python\Python37-32\lib\site-packages\sklearn\base.py", line 20, in <module>
    from .utils import _IS_32BIT
  File "C:\Users\iMacPro 2K19\AppData\Local\Programs\Python\Python37-32\lib\site-packages\sklearn\utils\__init__.py", line 28, in <module>
    from .validation import (as_float_array,
ImportError: cannot import name 'as_float_array' from 'sklearn.utils.validation' (C:\Users\iMacPro 2K19\AppData\Local\Programs\Python\Python37-32\lib\site-packages\sklearn\utils\validation.py)

Process finished with exit code 1

如果有帮助,这也是我的代码..

import sys
import scipy
import numpy
import matplotlib
import pandas
import sklearn
# Python Version
print('Python {0}'.format(sys.version))
# scipy
print('scipy {0}'.format(scipy.__version__))
# numpy
print('numpy {0}'.format(numpy.__version__))
# matplotlib
print('matplotlib {0}'.format(matplotlib.__version__))
# pandas
print('pandas {0}'.format(pandas.__version__))
# sklearn
print('sklearn {0]'.format(sklearn.__version__))

我正在运行 win7 x64. python 3.7.3scipy 1.3.2numpy 1.17.4matplotlib 3.1.2pandas 0.25.3。 还有人请告诉我 sklearnscikit-learn 是否不同,或者两者都只是名称不同,因为我有 sklearn version 0.0 和scikit-learn 版本 0.22.1。 并且在导入时我只能导入 sklearn,尝试导入时 scikit-learn 不显示为可用。我认为代码中没有任何问题。也许 sklearn 与我的 python 版本不兼容。我不确定。任何帮助将非常感激。谢谢。

【问题讨论】:

  • 我猜这个链接会给你一些关于如何解决问题的见解。如果仍然没有帮助,请告诉我:) stackoverflow.com/questions/32675024/…
  • @AlenSThomas 很抱歉,它没有用。我几个小时前访问了这个链接并尝试了这些解决方案,但没有一个有效。我已经安装了 scikit-learn 和 sklearn 包,并使用名称 sklearn 导入(例如 import sklearn)。但它不起作用。
  • 您只想拥有scikit-learn 包。见 pypi:pypi.org/project/sklearn
  • 我认为问题是由于'print('sklearn {0]'.format(sklearn.__version__))'。在 .format 方法之前,大括号应该是 {} 而不是 {]。请看看这是否有帮助。

标签: python python-3.x scikit-learn python-import importerror


【解决方案1】:

在命令提示符中尝试

pip install -U scikit-learn

在尝试使用此代码将您的库版本测试到您的 python IDLE 之后。

import sys
import scipy
import numpy
import matplotlib
import pandas
import sklearn
# Python Version
print('Python {0}'.format(sys.version))
# scipy
print('scipy {0}'.format(scipy.__version__))
# numpy
print('numpy {0}'.format(numpy.__version__))
# matplotlib
print('matplotlib {0}'.format(matplotlib.__version__))
# pandas
print('pandas {0}'.format(pandas.__version__))
# sklearn
print('sklearn {0}'.format(sklearn.__version__))

您可以在终端中看到与您的 otput 控制台中相同的内容

Python 3.8.3 (default, Jul  2 2020, 17:30:36) [MSC v.1916 64 bit (AMD64)]
scipy 1.5.0
numpy 1.18.5
matplotlib 3.2.2
pandas 1.0.5
sklearn 0.23.1

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-05-18
    • 1970-01-01
    • 2016-01-16
    • 2013-02-22
    • 2017-03-23
    • 2020-06-04
    相关资源
    最近更新 更多