ImportError: cannot import name 'joblib' from 'sklearn.externals' (D:\Users\hp\anaconda3\Lib\site-packages\sklearn\externals\__init__.py)
时间: 2024-03-16 12:39:28 浏览: 144
这个错误是由于在sklearn.externals模块中找不到名为'joblib'的导入。这个问题通常是由于版本不兼容或者缺少必要的依赖库引起的。
解决这个问题的方法是更新scikit-learn库或者安装joblib库。首先,你可以尝试更新scikit-learn库到最新版本,使用以下命令:
```
pip install --upgrade scikit-learn
```
如果更新scikit-learn库没有解决问题,你可以尝试单独安装joblib库,使用以下命令:
```
pip install joblib
```
如果以上方法都没有解决问题,可能是其他依赖库的版本不兼容导致的。你可以尝试查看sklearn.externals模块的__init__.py文件,确认是否存在'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问题。希望这个解决方案对你有帮助!