我已经好几年没有使用RPy2了(然后我只玩了一段时间)。但是,我现在想更加认真地开始使用Python和R,并决定重新探索RPy2库。
我正在使用运行El Capitan的Mac。我使用Python 3.4.4创建了一个新的虚拟环境(称为env34),并使用get-pip.py安装了最新版本的pip(19.1.1)。然后,我将numpy,pandas和jupyter安装到激活的环境中。我还点安装了RPy2(但必须包括一个受信任的主机标志):
(env34) $ pip install rpy2 --trusted-host=https://pypi.org/simple/cffi
我还在Applications文件夹的默认位置安装了最新版本的R(3.6.0),并编辑了.bash_profile以添加以下内容来创建RHOME环境变量:
RHOME="/Library/Frameworks/R.framework/Resources"
export RHOME
现在,当我在虚拟环境中启动Python时,可以毫无问题地导入rpy2。但是,当我尝试使用以下命令导入rpy2.robjects时,我将尝试遵循http://heather.cs.ucdavis.edu/~matloff/rpy2.html给出的教程。
>>> from rpy2.robjects import r
我收到以下错误:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/path_to_virtual_environment/env34/lib/python3.4/site-packages/rpy2/robjects/__init__.py", line 14, in <module>
import rpy2.rinterface as rinterface
File "/path_to_virtual_environment/env34/lib/python3.4/site-packages/rpy2/rinterface.py", line 5, in <module>
import rpy2.rinterface_lib._rinterface_capi as _rinterface
File "/path_to_virtual_environment/env34/lib/python3.4/site-packages/rpy2/rinterface_lib/_rinterface_capi.py", line 8, in <module>
from . import conversion
File "/path_to_virtual_environment/env34/lib/python3.4/site-packages/rpy2/rinterface_lib/conversion.py", line 8, in <module>
from . import _rinterface_capi as _rinterface
ImportError: cannot import name '_rinterface_capi'
据我所知,消息中引用的所有文件都位于正确的位置。
任何人都可以解释此错误消息并提供解决方法吗?
谢谢。