📅  最后修改于: 2023-12-03 14:55:05.857000             🧑  作者: Mango
在Python中尝试导入joblib
时,出现了以下错误:
无法从“sklearn.externals”(shared-libs python3.7 py lib python3.7 site-packages sklearn externals __init__.py)导入名称“joblib”
这个问题的原因是在Scikit-learn 0.21版本中,joblib
库从sklearn.externals
模块中移除了,并成为一个单独的独立库。因此,在较新版本的Scikit-learn中,不能再从sklearn.externals
中导入joblib
。
要解决这个问题,你可以遵循以下步骤:
首先,你需要确保你正在使用的Scikit-learn版本是较新的。你可以通过以下命令检查已安装的版本:
pip show scikit-learn
如果你的版本低于0.21,请使用以下命令升级Scikit-learn:
pip install --upgrade scikit-learn
joblib
库导入新版本的Scikit-learn使用了独立的joblib
库。你需要从这个库中导入joblib
。使用以下代码替换你先前导入joblib
的代码:
from joblib import joblib
这样,你就可以重新导入joblib
库了。
如果你的代码中还存在其他使用了sklearn.externals
的部分,需要进行一些更新。在Scikit-learn的新版本中,大多数以前位于sklearn.externals
下的模块都被移动到了新的位置。你需要根据这些模块所在的新位置进行相应的更改。
在Python中无法从sklearn.externals
导入joblib
的问题是由于新版本的Scikit-learn中将joblib
从该模块中移除所致。要解决这个问题,你需要升级Scikit-learn到较新的版本,并从独立的joblib
库中导入joblib
。如果代码中还有其他使用了sklearn.externals
的部分,你需要将它们迁移到新的位置。
希望这个解决方案可以帮助到你!