【问题标题】:rpy2 error symbol 'R_tryCatchError' not found in library '/usr/lib/R/lib/libR.so'在库“/usr/lib/R/lib/libR.so”中找不到 rpy2 错误符号“R_tryCatchError”
【发布时间】:2020-04-14 13:41:25
【问题描述】:

Python:3.7.6

rpy2:3.2.7

R:3.3.3

我在 AI Platform 上使用 GCE 来执行一些聚类。 我已经安装了 r-base,正确更新,安装了 python-rpy2,我得到了这个错误。

import rpy2.robjects as robjects

error: symbol 'R_tryCatchError' not found in library '/usr/lib/R/lib/libR.so': /usr/lib/R/lib/libR.so: undefined symbol: R_tryCatchError

有人可以帮助我吗?

【问题讨论】:

  • 我遇到了同样的问题。如果您找到了解决方案,请告诉我

标签: python r rpy2


【解决方案1】:

R 对于您尝试使用的 rpy2 版本来说太旧了。

我建议更新 R(最新的 R 版本是 3.6.x)以及 rpy2(最新的版本是 3.3.1)。

【讨论】:

  • 在无法升级系统安装的R的情况下,导致这个问题的rpy2的第一个版本是3.2.3,所以要安装的是rpy2==3.2.2
【解决方案2】:

为了提供可操作的代码 sn-p,这对我有用

R --version  # older, < 3.6 version
sudo apt-get remove r-base r-base-core r-base-dev r-recommended
sudo vim /etc/apt/sources.list # for Ubuntu, from https://cran.r-project.org/bin/linux/ubuntu/README.html, remove old cran links and insert the one matching your Ubuntu LTS distro
apt-cache showpkg r-base # should show R version you want e.g. 3.6 or 4.0
sudo apt-get install r-base r-base-core r-base-dev r-recommended
R --version # should be newer
sudo apt-get install python-rpy2 # real data scientists play no favorites
#pip install rpy2; echo "import rpy2.robjects as robjects | python # should work

正如@igautier 所提到的,原因是 R 的版本非常旧,但上面已修复。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-09-28
    • 2013-07-27
    • 1970-01-01
    • 2021-05-15
    • 1970-01-01
    相关资源
    最近更新 更多