ImportError: cannot import name 'joblib' from 'sklearn.externals' (/home/lvqiji/.local/lib/python3.10/site-packages/sklearn/externals/__init__.py)
时间: 2023-07-10 19:36:01 浏览: 197
这个错误是因为在新版本的sklearn中,`joblib`已经不再属于`sklearn.externals`,而是一个独立的包。你需要安装`joblib`包并将其导入到你的代码中,例如:
```python
from joblib import Parallel, delayed
```
如果你已经安装了`joblib`但仍然遇到这个错误,可能是因为你的环境中存在多个Python版本,而你执行的Python版本(例如Python 3)没有安装`joblib`包。你可以尝试在终端中使用以下命令来安装`joblib`:
```python
pip3 install joblib
```
希望这能帮助你解决问题。
相关问题
from sklearn.externals import joblib ImportError: cannot import name 'joblib' from 'sklearn.externals' (/home/aaa/anaconda3/lib/python3.9/site-packages/sklearn/externals/__init__.py)
这个错误是因为在最新版本的 scikit-learn 中,`joblib` 被移动到了一个单独的包中,你需要安装 `joblib` 包才能使用它。你可以通过运行以下命令来安装它:
```
pip install joblib
```
如果你使用的是 scikit-learn 0.23 版本及以上的版本,可以直接使用以下代码来导入 `joblib`:
```
from sklearn import set_config
set_config(working_memory=True)
```
这将启用 scikit-learn 的内置缓存机制,以便更有效地使用内存。
ImportError Traceback (most recent call last) Cell In[1], line 3 1 import xgboost as xgb 2 from sklearn.model_selection import train_test_split ----> 3 from sklearn.externals import joblib 4 from sklearn.model_selection import ParameterGrid 5 from ultis import * ImportError: cannot import name 'joblib' from 'sklearn.externals' (e:\python\Lib\site-packages\sklearn\externals\__init__.py)
这个错误是因为你使用的Sklearn版本不同于你的代码中使用的版本。在Sklearn 0.23版本中,joblib已经从sklearn.externals中移动到了sklearn.utils中。所以你需要更新sklearn版本或者改变你的代码中的导入语句。
你可以通过以下方式导入joblib:
```python
from sklearn.utils import joblib
```
或者升级sklearn版本:
```python
!pip install --upgrade scikit-learn
```
阅读全文