XGBoostError:需要安装sklearn才能使用此模块(GCP Datalab)

时间:2018-10-15 14:17:03

标签: python xgboost google-cloud-datalab

我正在尝试在GCP数据实验室中使用Xgboost。我已经安装了sklearn,但仍然出现错误:

  

“ XGBoostError:需要安装sklearn才能使用它   模块”

下面是我使用的代码:

import sklearn
!pip3 install xgboost
from xgboost.sklearn import XGBClassifier
model = XGBClassifier()

我曾经尝试使用Python v 2.7,但是没有运气...没有人知道如何在GCP Datalab中解决此问题吗?

3 个答案:

答案 0 :(得分:1)

在ipython上的python 3.7 32bit上,我也遇到了同样的问题。

解决方案:通过pip uninstall xgboost在终端机/ cmd上卸载 xgboost 软件包。如果无法导入,请在控制台上进行交叉检查。现在,再次安装 xgboost pip install xgboostpip install xgboost-0.81-cp37-cp37m-win32.whl,因为您已经安装了 sklearn ,它将在新的控制台会话上运行。

答案 1 :(得分:1)

对我来说,然后先重新安装sklearn,然后再由xgboost完成该操作

答案 2 :(得分:0)

我在一个更复杂的项目中遇到了同样的错误,在发布新版本后突然失败了。

幸运的是,我有每个版本的docker映像,并且能够使用pip freeze来查看更改了。

在两个版本中,我都使用xgboost==0.81 在有效的版本中,我有scikit-learn==0.21.3,在新版本中,它是scikit-learn==0.22

令人惊讶的是,这就是导致问题的原因。我已尝试按照此处的建议卸载xgboost,并将scikit-learn还原为原来的版本,但仍然没有运气。

导致该问题的原因是将numpy1.17.4更新为1.18.0。 还原它为我解决了(不确定原因)

这是Ubuntu上的python 3.6