问题:
安装lightgbm成功后,无法在anaconda jupyter notebook中导入lightgbm包
原因:
lightgbm默认安装在本地python环境中,而anaconda的python环境与本地不是同一个环境,不能使用本地环境中的包
解决方法:
将本地环境中的lightgm包拷贝到anaconda的python环境中
操作方法:
在本地的python环境下,导入lightgbm包,使用lightgbm.__file__输出包的路径
在Anaconda的python环境下,导入任意一个包,然后输出该路径
将本地环境中的lightgm包拷贝到anaconda的python环境中
补充:mac 安装 lightgbm 无法导入(以及解决cmake命令无法编译)
最近在看数据分析,用到 python 的 lightgbm 包,直接用 pip install lightgbm 命令安装后,在 import lightgbm 时总报错,解决了一晚上加一上午,记录下来帮助像我一样的新手小伙伴少踩坑。
一般的包在用上述 pip 命令安装后,就可正常使用,但是 LightGBM 编译依赖 OpenMP,Apple Clang 不支持。给出如下图的错误:
官网也有给出在 mac 上安装的方法,但我在执行 cmake .. 命令时,总是无法成功,跳过这个坑花了好久,下面给出成功安装的方法。
系统:macOS Sierra 10.12.6
LightGBM包:https://github.com/Microsoft/...
首先保证你的电脑装了 Homebrew,下面用到 brew 命令。
打开终端后,依次执行命令:
brew install cmake
brew install gcc@7 --without-multilib
git clone --recursive https://github.com/Microsoft/LightGBM ; cd LightGBM
mkdir build ; cd build
cmake -DCMAKE_CXX_COMPILER=g++-7 -DCMAKE_C_COMPILER=gcc-7 ..
make -j
如果安装成功,最后输出结果如下:
我的电脑上默认安装到 /usr/local/lib/python2.7/site-packages 文件夹下。
输出上述编译成功的信息后,即可执行下一步,从 build 文件夹返回上一级,执行命令:
cd python-package
pip install lightgbm
如成功安装显示信息:
最后还需要进行配置,找到你在上一步安装的 LightGBM 文件夹,拷贝里面的 lib_lightgbm.so 文件到 LightGBM/python-package/lightgbm 目录下。最后将 LightGBM/python-package/lightgbm 文件夹拷贝到你需要用到到 python 文件夹下。
注意是要将 python-package 里的 lightgbm 文件夹放到要用到 lightgbm 的环境下,而不是 LightGBM 整个文件,否则虽然可以 import 成功,但是不能正常用,会报错 LightGBM 对要用的方法无效。
我用的是 python3.6 和 jupyter notebook,所以需要分别将 lightgbm 文件夹复制到 /usr/local/lib/python3.6/site-packages 和 anaconda3 对应的文件夹下。
补充:
在执行 pip install lightgbm 命令时,我又遇到了如下所示的问题:
解决办法,执行命令:
pip install urllib3==1.21.1
然后即可成功 import :
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。如有错误或未考虑完全的地方,望不吝赐教。