昨天通过点击此链接,我能够在 Windows 中安装 xgboost for Python 。但是当我尝试使用 Anaconda 导入时,它失败了。我认识到这是因为 Anaconda 具有不同的 Python 发行版。然后我再次搜索并找到了这篇很棒的文章!
诀窍是在为常规 Python 成功安装后,要让它在 Anaconda 上工作,你只需要打开 Anaconda 提示符并 cd 到这个文件夹“code\xgboost\python-package”,然后运行:
python setup.py install
瞧!文章说您需要添加路径,但对我来说它直接起作用。祝你好运!
如果链接不可用,也复制到原始内容下方...
一旦最后一个命令完成,构建就完成了。我们现在可以安装 Python 模块。以下内容取决于您使用的 Python 发行版。对于 Anaconda,我将简单地使用 Anaconda 提示符,然后在其中输入以下内容(在提示符之后,在我的例子中是 [Anaconda3] C:\Users\IBM_ADMIN>):
[Anaconda3] C:\Users\IBM_ADMIN>cd code\xgboost\python-package
The point is to move to the python-package directory of XGBoost. Then type:
[Anaconda3] C:\Users\IBM_ADMIN\code\xgboost\python-package>python setup.py install
我们快完成了。让我们启动一个笔记本来测试 XGBoost。直接导入会出错。为了避免这种情况,我们必须将 g++ 运行时库的路径添加到 os 环境路径变量中:
import os
mingw_path = 'C:\\Program Files\\mingw-w64\\x86_64-5.3.0-posix-seh-rt_v4-rev0\\mingw64\\bin'
os.environ['PATH'] = mingw_path + ';' + os.environ['PATH']
然后我们可以导入 xgboost 并运行一个小例子。
import xgboost as xgb
import numpy as np
data = np.random.rand(5,10) # 5 entities, each contains 10 features
label = np.random.randint(2, size=5) # binary target
dtrain = xgb.DMatrix( data, label=label)
dtest = dtrain
param = {'bst:max_depth':2, 'bst:eta':1, 'silent':1, 'objective':'binary:logistic' }
param['nthread'] = 4
param['eval_metric'] = 'auc'
evallist = [(dtest,'eval'), (dtrain,'train')]
num_round = 10
bst = xgb.train( param, dtrain, num_round, evallist )
bst.dump_model('dump.raw.txt')
我们都准备好了!