使用 rpy2 安装本地包 - 包无效

install local package with rpy2 - invalid package

我正在尝试 运行 本地 r 包并存储它返回的结果。

我已将 R 包放在与 python 脚本相同的目录中。我从 rpy2.robjects.packages 导入了 importr 并导入了 utils 包。

当我这样调用 install.packages 时

from rpy2.robjects.packages import importr
utils = rpackages.importr('utils')
utils.install_packages('impactr_3.gz', repos = NULL, type="source")

产生的错误是:

NameError: name 'NULL' is not defined.

如何使用 rpy2 加载这个本地 R 包?

除非您定义它,否则 Python 将不知道任何 NULL(因此出现错误)。如果要使用 R 的 NULL,可以找到 rpy2.robjects.NULLrpy2.rinterface.NULL.

否则,您要使用的 R 函数的文档表明也可以使用前缀 file://:

指定路径
utils.install_packages('file://impactr_1.0.1.tar.gz', type = "source")