11

我知道有很多关于在 Windows 7 32 位上使用 rpy2 启动和运行的帖子。我参考了其中的很多并尝试了他们的解决方案,包括使用PypeR.

我没有在我的路径中明确设置 R_HOME 变量,但是根据这个问题,我确认 R 在我的 PATH 中(我可以R在命令行中键入并让 R 运行),甚至从 i386 文件夹中复制了所有文件到父bin文件夹。

我的问题贴在下面。有什么想法吗?

In [5]: from rpy2 import robjects
---------------------------------------------------------------------------
RuntimeError                              Traceback (most recent call last)
<ipython-input-5-1f019d00d232> in <module>()
----> 1 from rpy2 import robjects

C:\Anaconda\lib\site-packages\rpy2\robjects\__init__.py in <module>()
     16 import rpy2.rlike.container as rlc
     17
---> 18 from rpy2.robjects.robject import RObjectMixin, RObject
     19 from rpy2.robjects.vectors import *
     20 from rpy2.robjects.functions import Function, SignatureTranslatedFunction

C:\Anaconda\lib\site-packages\rpy2\robjects\robject.py in <module>()
      3 import rpy2.rinterface
      4
----> 5 rpy2.rinterface.initr()
      6
      7 import conversion

RuntimeError: R_HOME not defined.
4

2 回答 2

9

我确认此问题与R_HOME未定义的变量有关。

在我看来,所有这些问题都是因为rpy2包的开发人员没有正确记录他们软件的要求:

  • 安装R
  • 创建R_HOME系统变量
  • 添加R_HOME\binPATH, 以便Rpython
  • 添加R_HOME\bin\x64PATH, 以便加载R.dll
  • 安装包tzlocal
于 2019-03-12T10:25:13.593 回答
4

在上面评论的帮助下,我朝着正确的方向前进。我将 R_HOME 创建为 SYSTEM 变量。这并没有立即奏效,因为我收到了 R_USER 未定义错误。

为了使上述导入的所有内容都能正常工作,我只是在定义 R_HOME 后从此处重新安装了 rpy2可执行文件。没有错误。

总之,关键是在安装 rpy2 之前设置了 R_HOME。

于 2013-07-10T19:00:29.817 回答