【问题标题】:Segmentation fault 11 in Python when importing pandas.rpy.common导入 pandas.rpy.common 时 Python 中的分段错误 11
【发布时间】:2014-09-02 18:20:52
【问题描述】:

我正在运行默认安装 Python 2.7.2 的 Mountain Lion。我已经使用这个版本的 Python 建立了一个新的虚拟 Python 环境。我使用 pip install 安装了一些软件包,例如 numpy、matplotlib、ipython 和其他一些软件包。我一直在尝试开发一个脚本来从 R 加载数据,所以我也安装了 rpy2。当我在终端启动 Python 时,我可以导入所有已安装的包(例如 numpy、matplotlib 等),没有任何问题。但是当我输入任何一个时:

import pandas.rpy.common as com

import rpy2.robjects as objects

然后来自 Python 的exit(),报告了分段错误 11。这可能不是太大的问题,因为我要在 Python 提示符下分别输入每个命令,因为这些命令似乎工作正常。但是,我无法将命令作为较长脚本的一部分运行,因为该错误似乎导致脚本过早停止。

安装的 pandas 版本是 0.14.1(之前是 0.14.0 - 同样的问题)。 R 的版本是 3.1.1。我已经尝试重新安装 R 并通过新安装所有软件包来重新创建新的虚拟环境。

关于 Mavericks 中引入的更改导致的分段错误 11 有很多讨论。但是,我认为这些问题不应该影响 Mount Lion。如有任何建议,我们将不胜感激。

【问题讨论】:

  • 从过去关于此类问题的报告来看,答案几乎都是:不要使用 OS X 系统的 Python,而是自己安装的。
  • 感谢您的提示。我尝试使用使用 Fink 安装的 Python 2.7.8(我真的很喜欢 Fink)。我使用“virtualenv -p /sw/bin/python env”创建了一个虚拟环境,但后来我在安装 matplotlib 时遇到了麻烦。由于某种原因,它无法编译(尽管 numpy 等其他软件包没有问题)。也许这应该是另一个问题。
  • 我尝试使用 Python.org 上的 .dmg 安装全新的 Python (2.7.8)。使用 virtualenv 使用新安装的 Python 版本创建新环境。但仍然得到相同的分段错误 11.
  • 提交错误报告。我目前无法访问可以进行 rpy2 开发的 OS X 系统,但其他人或许可以提供帮助。

标签: python r pandas rpy2 robjects


【解决方案1】:

在安装了系统 R (例如使用 RStudio)以及安装在环境中的 rpy2 (例如 conda)的机器上,使用系统 1,并且可能与构建 rpy2 的系统不兼容,导致 seg故障。 要诊断您是否有与 rpy2 捆绑在一起的不同 R 版本,请运行:

import rpy2
for row in rpy2.situation.iter_info():
    print(row)

this answer查看更多信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-11
    • 2013-09-17
    • 1970-01-01
    • 2018-12-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多