IPython Notebook无法调用XGBoost属性的问题求助
解决IPython Notebook无法使用XGBoost属性的问题
这种情况我之前也碰到过,大概率是IPython Notebook用的Python环境和你终端里的不是同一个!毕竟XGBoost是装在终端对应的环境里,但Notebook可能跑在了另一个没装XGBoost或者版本不对的环境上。给你几个排查和解决的办法:
确认环境路径是否一致
在Python终端输入以下命令,记下输出的路径:import sys; print(sys.executable)然后在IPython Notebook里运行同样的代码,对比两个路径。如果不一样,说明Notebook用的是另一个未正确安装XGBoost的环境。
切换Notebook内核到正确环境
如果你用的是conda虚拟环境,先在终端激活你安装了XGBoost的环境,然后执行以下命令将该环境添加为Notebook内核:python -m ipykernel install --user --name=你的环境名称回到Notebook,点击右上角的内核选择按钮,切换到你刚添加的环境,重启内核后再测试XGBoost。
检查是否存在同名模块干扰
有时候Notebook所在文件夹里如果有xgboost.py文件或者xgboost文件夹,会导致导入的不是官方库。在Notebook里运行以下命令查看导入路径:import xgboost; print(xgboost.__file__)如果输出的是本地文件夹里的文件,立刻把这个文件/文件夹重命名或删除,避免干扰。
直接在Notebook环境重装XGBoost
如果以上方法都没用,直接在Notebook里执行安装命令,确保当前环境有正确的XGBoost版本:# pip安装 !pip install xgboost --upgrade # 或者conda安装(如果用conda环境) !conda install xgboost -y
内容的提问来源于stack exchange,提问作者loginofdeath
相关产品推荐
相关产品推荐

