【问题标题】:Getting Segmentation fault Core dumped error while importing robjects from rpy2从 rpy2 导入 robject 时出现分段错误核心转储错误
【发布时间】:2017-01-13 20:08:16
【问题描述】:

手动安装 R 和 rpy2

安装成功,但出现上述错误。请帮帮我?

一些有用命令的输出:

>>> import rpy2
>>> rpy2.__path__
['/home/ashish/miniconda2/lib/python2.7/site-packages/rpy2-2.8.2-py2.7-linux-x86_64.egg/rpy2']
>>> import rpy2.robjects
cannot find system Renviron
/home/ashish/miniconda2/lib/python2.7/site-packages/rpy2-2.8.2-py2.7-linux- x86_64.egg/rpy2/rinterface/__init__.py:185: RRuntimeWarning: Fatal error: unable to open the base package


warnings.warn(x, RRuntimeWarning)
Segmentation fault (core dumped)

提前谢谢..

【问题讨论】:

  • 请包括重现错误的步骤。
  • @cel 更新了我的问题。请帮助我,感谢您的快速评论。
  • “手动”还是使用 conda 安装程序?
  • 手动@lgautier
  • 您运行的 R 版本可能很重要。我注意到,至少对于 OS X 的 Anaconda 存储库,rpy2-2.8.2 是针对 R 3.3.1 构建的。分段错误可能是某种共享库版本不匹配。

标签: python r rpy2


【解决方案1】:

如果您通过 conda 安装 rpy2,并且在同一台机器上安装了 R 系统(例如使用 RStudio),则将使用系统的 R 安装。由于此 R 版本与 rpy2 需要的版本不匹配,因此会出现分段错误。

1) 删除任何现有的 R 系统安装 (see here)。验证您没有安装任何 R:

$>which R
R not found

2) 在您的 .rc 文件中定义 R_HOME 环境变量:

export R_HOME=/Users/<your user>/anaconda3/envs/<env name>/lib/R

或在python项目中动态:

import os
os.environ['R_HOME'] = '/Users/<your user>/anaconda3/envs/<env name>/lib/R'

【讨论】:

  • 这是黄金。解决了我尝试在 Python 中运行 R 时出现的“致命错误:无法初始化 JIT”问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-28
  • 1970-01-01
相关资源
最近更新 更多