lazypredict.Supervised.LazyClassifier。 ImportError:无法从“sklearn.utils.deprecation”导入名称“_raise_dep_war
Posted
技术标签:
【中文标题】lazypredict.Supervised.LazyClassifier。 ImportError:无法从“sklearn.utils.deprecation”导入名称“_raise_dep_warning_if_not_pytest”【英文标题】:lazypredict.Supervised.LazyClassifier. ImportError: Cannot import name '_raise_dep_warning_if_not_pytest' from 'sklearn.utils.deprecation' 【发布时间】:2021-07-22 02:12:08 【问题描述】:我试过了:
from lazypredict.Supervised import LazyClassifier
但得到以下回溯:
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-1-f518cae57501> in <module>
10 from sklearn.linear_model import LogisticRegression
11 from sklearn.ensemble import RandomForestClassifier
---> 12 from lazypredict.Supervised import LazyClassifier
13 from sklearn.model_selection import GridSearchCV
14 from sklearn.metrics import accuracy_score
~\AppData\Roaming\Python\Python38\site-packages\lazypredict\Supervised.py in <module>
14 from sklearn.preprocessing import StandardScaler, OneHotEncoder, OrdinalEncoder
15 from sklearn.compose import ColumnTransformer
---> 16 from sklearn.utils.testing import all_estimators
17 from sklearn.base import RegressorMixin
18 from sklearn.base import ClassifierMixin
S:\anaconda\lib\site-packages\sklearn\utils\testing.py in <module>
5 from . import _testing # type: ignore
6 from ..externals._pep562 import Pep562
----> 7 from ..utils.deprecation import _raise_dep_warning_if_not_pytest
8
9 deprecated_path = 'sklearn.utils.testing'
ImportError: cannot import name '_raise_dep_warning_if_not_pytest' from 'sklearn.utils.deprecation' (S:\anaconda\lib\site-packages\sklearn\utils\deprecation.py)
我正在使用 Jupyter 笔记本,并且已经尝试升级 scikit-learn
。
【问题讨论】:
LazyClassifier
是 3rd 方包 (github.com/shankarpandala/lazypredict),它不是从 scikit-learn 导入的。
你运行的是什么版本? (例如:pip freeze | grep "scikit-learn
和 pip freeze | grep lazypredict
的输出是什么)
【参考方案1】:
这很可能是由lazypredict
和scikit-learn
的不兼容版本引起的。根据当前的 LazyPredict 需求文件,它需要scikit-learn==0.23.1
。
这应该通过以下方式解决:
pip uninstall scikit-learn -y
pip install scikit-learn==0.23.1
【讨论】:
我实际上不得不再次安装lazypredict。现在可以了。如您所说,可能是因为它们的两个版本不兼容。非常感谢!【参考方案2】:如果它对其他人有帮助,上述安装 scikit-learn 版本 0.23.1 的解决方案对我不起作用。我正在使用 Anaconda 并执行了conda update --all
,然后运行了conda install scikit-learn-intelex
,之后导入对我有用。
【讨论】:
【参考方案3】:我的错误通过这样做解决了:
!pip uninstall scikit-learn -y
!pip install scikit-learn==0.24
【讨论】:
以上是关于lazypredict.Supervised.LazyClassifier。 ImportError:无法从“sklearn.utils.deprecation”导入名称“_raise_dep_war的主要内容,如果未能解决你的问题,请参考以下文章