ImportError: cannot import name 'joblib' from 'sklearn.externals' (/home/lvqiji/.local/lib/python3.10/site-packages/sklearn/externals/__init__.py)
时间: 2023-07-10 08:36:01 浏览: 193
这个错误是因为在新版本的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: cannot import name 'joblib' from 'sklearn.externals'
这个错误通常是由于sklearn版本更新导致的。在新版本的sklearn中,joblib已经被移动到了sklearn.utils中。因此,如果你想使用joblib,你需要从sklearn.utils中导入它。以下是一个例子:
```python
from sklearn.utils import joblib
```
如果你仍然想使用旧版本的sklearn,你可以通过以下方式导入joblib:
```python
from sklearn.externals import joblib
```
但是需要注意的是,这种方法可能会在将来的sklearn版本中被弃用。因此,建议你尽快升级到新版本的sklearn并使用第一种方法导入joblib。
阅读全文