使用sklearn,报错Library not loaded: @rpath/libgfortran.3.dylib

文章描述了在使用conda安装sklearn后遇到ImportError,库加载失败的问题。作者通过检查路径、版本匹配和conda环境文件的权限解决了问题。解决方案包括更新文件权限和确保相关库的版本一致性。
摘要由CSDN通过智能技术生成

        因为需要使用sklearn,去做一些数据分析,所以使用conda命令进行安装

conda install scikit-learn

        在安装完成之后,导入,并使用拟合优度R2函数评估,发生如下报错;

import sklearn as sk
r2 = sk.metrics.r2_score(y_list, result)

报错:

ImportError: dlopen(/XXXXX用户路径XXXXX/lib/python3.6/sitepackages/scipy/special/

_ufuncs.cpython-36m-darwin.so, 2): Library not loaded: @rpath/libgfortran.3.dylib

Library not loaded: @rpath/_ufuncs.cpython-36m-darwin.so

Reason: image not found

        根据翻译,直观来说就是这个 _ufuncs.cpython-36m-darwin.so 库加载失败。

        分析1:在提示的XXXXX用户路径XXXXX(每个人安装的路径不一致)的情况下,在对应路径下是能够找到这个库包的,说明并不是库不存在导致的。

        分析2:查阅资料后,怀疑是sklearn、numpy、scipy这三个库的版本不一致导致,在多次卸载重装后排出了这个问题(!但是,的确有因为这个原因导致报错的,所以可以尝试一下

        分析3:在重装过程中,发现如下问题!

提示:Path not writable or missing,这是conda的环境文件,是否可写和安装conda时候的用户权限有关,我这边使用的brew,可能在安装时默认的root用户,所以只可以读,不可以写。

sudo chmod 775 /你的路径/.conda/environments.txt

使用该命令,赋予文件写的权限!并重装分析2中的三个库。

        至此,问题解决。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值