anaconda jupyter不能导入安装的lightgbm解决方案

 更新时间:2021年03月25日 09:20:02   作者:fitcoder  
这篇文章主要介绍了anaconda jupyter不能导入安装的lightgbm解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

问题:

安装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 :

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

相关文章

  • python subprocess.run中的具体使用

    python subprocess.run中的具体使用

    subprocess.run是Python3.5及以上版本中用于运行子进程的函数,它提供了更简单和更强大的方式来创建和管理子进程,本文就来详细的介绍一下,感兴趣的可以了解一下
    2025-01-01
  • Python中常用脚本集锦分享

    Python中常用脚本集锦分享

    这篇文章为大家收集了一些常用Python脚本,作为平时练手使用,也可以作为自己的笔记,希望对大家有一定的帮助
    2024-11-11
  • python 对多个csv文件分别进行处理的方法

    python 对多个csv文件分别进行处理的方法

    今天小编就为大家分享一篇python 对多个csv文件分别进行处理的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • Django中celery的使用项目实例

    Django中celery的使用项目实例

    Celery是⼀个 基于python开发的分布式异步消息任务队列,通过它可以轻松的实现任务的异步处理,下面这篇文章主要给大家介绍了关于Django中celery使用的相关资料,需要的朋友可以参考下
    2022-07-07
  • Python一行命令部署http ftp服务

    Python一行命令部署http ftp服务

    这篇文章主要介绍了Python一行命令部署http ftp服务实现过程详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2024-01-01
  • Python利用PyPDF2库处理PDF文件的基本操作

    Python利用PyPDF2库处理PDF文件的基本操作

    PyPDF2是一个Python库,用于处理PDF文件,包括合并、分割、旋转和提取文本等操作,它是一个功能强大且灵活的工具,可用于自动化处理PDF文件,适用于各种应用,从文档管理到数据分析,本文将深入介绍PyPDF2库,掌握如何利用它来处理PDF文件,需要的朋友可以参考下
    2023-11-11
  • 老生常谈进程线程协程那些事儿

    老生常谈进程线程协程那些事儿

    下面小编就为大家带来一篇老生常谈进程线程协程那些事儿。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07
  • python中windows链接linux执行命令并获取执行状态的问题小结

    python中windows链接linux执行命令并获取执行状态的问题小结

    这篇文章主要介绍了python中windows链接linux执行命令并获取执行状态,由于工具是pyqt写的所以牵扯到用python链接linux的问题,这里记录一下一些碰到的问题,需要的朋友可以参考下
    2022-11-11
  • Python实现AI自动玩俄罗斯方块游戏

    Python实现AI自动玩俄罗斯方块游戏

    提到《俄罗斯方块》,那真是几乎无人不知无人不晓。其历史之悠久,可玩性之持久,能手轻轻一挥,吊打一大波游戏。本文将利用Python实现俄罗斯方块进阶版—AI自动玩俄罗斯方块,感兴趣的可以学习一下
    2022-03-03
  • python合并RepeatMasker预测结果中染色体的overlap区域

    python合并RepeatMasker预测结果中染色体的overlap区域

    这篇文章主要为大家介绍了python合并RepeatMasker预测结果中染色体的overlap区域实现示例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07

最新评论