ImportError: cannot import name 'joblib' from 'sklearn.externals' (D:\Python\Anaconda\lib\site-packages\sklearn\externals\__init__.py)
时间: 2023-09-09 07:06:05 浏览: 728
这个错误可能是因为您正在使用的Scikit-learn版本与代码中使用的版本不兼容。在旧版本的Scikit-learn中,`joblib`被放在`sklearn.externals`模块中,但在新版本中已经被移动到`sklearn.utils`中。
为了解决这个问题,您可以尝试升级您的Scikit-learn版本,或者在代码中使用新的`joblib`导入语句,例如:
```python
from sklearn.utils import joblib
```
这应该可以解决您遇到的问题。
相关问题
ImportError: cannot import name 'joblib' from 'sklearn.externals' (D:\ANACONDA\lib\site-packages\sklearn\externals\__init__.py)
这个错误通常是因为sklearn版本不兼容导致的,新版的scikit-learn已经将joblib集成到了sklearn包中,不再需要从sklearn.externals中导入。您可以尝试更新scikit-learn到最新版本,并将代码中的`from sklearn.externals import joblib`改为`import joblib`。
ImportError: cannot import name 'joblib' from 'sklearn.externals' (D:\anaconda\envs\pytorch\lib\site-packages\sklearn\externals\__init__.py)
根据引用[1]和引用[3]的内容,你遇到的问题是在导入sklearn.externals中的joblib模块时出现了ImportError。这个错误可能是因为你使用的sklearn版本高于0.23,而在这个版本中,sklearn.externals已经被移除了。因此,无法从sklearn.externals中导入joblib模块。
解决这个问题的方法是更新你的代码,使用新的sklearn版本中的joblib模块。你可以尝试使用sklearn库中的joblib模块来替代sklearn.externals中的joblib模块。你可以按照以下步骤进行操作:
1. 首先,确保你的sklearn库的版本高于0.23。你可以使用以下命令来检查sklearn的版本:
```
import sklearn
print(sklearn.__version__)
```
2. 如果你的sklearn版本低于0.23,你可以尝试更新sklearn库到最新版本。你可以使用以下命令来更新sklearn库:
```
pip install -U scikit-learn
```
3. 如果你的sklearn版本已经是高于0.23的版本,那么你可以直接使用sklearn库中的joblib模块,而不需要再使用sklearn.externals中的joblib模块。你可以将你的代码中的导入语句修改为:
```
from sklearn import joblib
```
这样应该可以解决你遇到的ImportError问题。希望这个解决方案对你有帮助!