无法使用 rpy2 从 PyCharm 加载 R环境变量问题?

问题描述

我正在尝试使用 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 (将#修改为@)