问题描述
我正在尝试使用 PyCharm 中的 rpy2 来从 Python 访问 R。我在 Linux Kubuntu 20.04 上使用 conda。当我导出
export LD_LIBRARY_PATH="/opt/R/4.0.3/lib/R/lib/:$LD_LIBRARY_PATH"
在我的 bash 中然后调用 python
,然后
import rpy2.robjects as robjects
被导入就好了。但是当我在 PyCharm 时,这不再起作用。设置我运行的环境变量
import os
os.environ['LD_LIBRARY_PATH'] = '/opt/R/4.0.3/lib/R/lib'
os.environ['R_HOME'] = '/opt/R/4.0.3/lib/R'
os.environ['R_USER'] = '/miniconda3/envs/myenv/lib/python3.8/site-packages/rpy2'
然后得到
import rpy2.robjects as robjects
R[write to console]: Error in dyn.load(file,DLLpath = DLLpath,...) :
cannot load shared object '/opt/R/4.0.3/lib/R/library/methods/libs/methods.so':
libR.so: Cannot open the shared object file: File or directory not found
Traceback (most recent call last):
File "<input>",line 1,in <module>
File "/snap/pycharm-professional/230/plugins/python/helpers/pydev/_pydev_bundle/pydev_import_hook.py",line 21,in do_import
module = self._system_import(name,*args,**kwargs)
File "/miniconda3/envs/myenv/lib/python3.8/site-packages/rpy2/robjects/__init__.py",line 19,in <module>
from rpy2.robjects.robject import RObjectMixin,RObject
File "/snap/pycharm-professional/230/plugins/python/helpers/pydev/_pydev_bundle/pydev_import_hook.py",**kwargs)
File "/miniconda3/envs/myenv/lib/python3.8/site-packages/rpy2/robjects/robject.py",line 58,in <module>
class RObjectMixin(object):
File "/miniconda3/envs/myenv/lib/python3.8/site-packages/rpy2/robjects/robject.py",line 70,in RObjectMixin
__show = _get_exported_value('methods','show')
File "/miniconda3/envs/myenv/lib/python3.8/site-packages/rpy2/rinterface_lib/conversion.py",line 45,in _
cdata = function(*args,**kwargs)
File "/miniconda3/envs/myenv/lib/python3.8/site-packages/rpy2/rinterface.py",line 677,in __call__
raise embedded.RRuntimeError(_rinterface._geterrmessage())
rpy2.rinterface_lib.embedded.RRuntimeError: Error in dyn.load(file,...) :
cannot load shared object '/opt/R/4.0.3/lib/R/library/methods/libs/methods.so':
libR.so: Cannot open the shared object file: File or directory not found
在任何一种情况下,我也为 conda 环境设置
conda env config vars set LD_LIBRARY_PATH='/opt/R/4.0.3/lib/R/lib'
事先并重新启动 PyCharm 和全新的 conda 环境。
我能做什么?
由于How to setup environment variable R_user to use rpy2 in python
我设置了R_USER
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)