我正在尝试使用 R 来运行我用 python 编写的函数。 该函数使用了 R 中的一些方法。因此,当我从 rPython 导入该函数时,它崩溃了,可能是由于循环导入。
本质上,我的 R 代码可能会简化为:
library(rPython)
python.exec("import rpy2.robjects")
这会导致 R 立即终止。
注意:上面的代码仅用于演示,在我的代码中我正在做一些有用的事情,例如:
library(rPython)
python.exec("from my_package import foo")
并且import rpy2.robjects
位于my_package.py
内。
我如何组织我的代码才能避免这种循环导入?
最佳答案
崩溃可能是由于嵌入式 R 被初始化两次造成的。
有讨论引入环境变量来捕获R的初始化状态here最初的实现应该是在 reticulate 和 rpy2 中(尽管我上次尝试时它仍然崩溃)。
关于python - 使用R的rPython来运行python的rpy2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48685478/