python ModuleNotFoundError: No module named 'sklearn.externals.joblib'
时间: 2023-11-24 14:53:23 浏览: 182
这个错误通常是因为您的Python环境中缺少所需的模块或库。在这种情况下,缺少的模块是sklearn.externals.joblib。您可以通过以下两种方法解决这个问题:
1.升级scikit-learn版本。在较新的版本中,sklearn.externals.joblib已被弃用并移至joblib库。您可以通过以下命令升级scikit-learn:
```shell
pip install --upgrade scikit-learn
```
2.安装joblib库。如果您使用的是较旧的scikit-learn版本,则可能需要安装joblib库。您可以通过以下命令安装joblib:
```shell
pip install joblib
```
请注意,如果您使用的是Python 3.8或更高版本,则需要安装joblib的最新版本(0.14.1或更高版本)。
以下是两种解决方法的示例代码:
```python
# 解决方法1:升级scikit-learn版本
pip install --upgrade scikit-learn
# 解决方法2:安装joblib库
pip install joblib
```
相关问题
ModuleNotFoundError: No module named 'sklearn.externals.joblib
这个错误是由于sklearn新版本移除了joblib模块导致的。解决方案有两种:
1. 将sklearn和joblib都回退到老版本。
2. 修改代码,将from sklearn.externals.joblib import Parallel, delayed改为from joblib import Parallel, delayed。
以下是第二种解决方案的代码示例:
```python
from joblib import Parallel, delayed
from stability_selection.randomized_lasso import RandomizedLogisticRegression as RLR
```
ModuleNotFoundError: No module named 'sklearn.externals.joblib'
当你运行代码时,出现了"ModuleNotFoundError: No module named 'sklearn.externals.joblib'"的错误。这是因为在scikit-learn的0.23版本及以后,sklearn.externals.six模块已被删除。要解决这个问题,你可以尝试以下两种方法:
方法一:降级scikit-learn到版本0.22或更低版本。你可以在jupyter notebook中使用以下命令将scikit-learn降级到0.20.3版本:
```
!pip install --upgrade scikit-learn==0.20.3
```
如果你在terminal中操作,可以使用以下命令:
```
pip install --upgrade scikit-learn==0.20.3
```
方法二:更新你的代码,以适应scikit-learn的新版本。在新版本中,sklearn.externals.joblib已经被移除。你可以尝试使用其他替代模块或函数来实现你的需求。
希望以上方法能够帮助你解决问题!
阅读全文