我正在try 从CONDA环境中的特定R路径导入R包,但一直收到以下错误:
Error: package or namespace load failed for ‘marginaleffects’ in library.dynam(lib, package, package.lib):
shared object ‘data_table.so’ not found
我不仅在努力理解如何修复这个错误,而且还在努力理解这个错误意味着什么,或者它来自哪里.
具体地说,我正在使用基于Pythonstreamlit
框架部署一个Web应用程序,并使用包rpy2
从现有的R代码库连接到Python.我使用conda/manba作为我机器上的包管理器.我已经尽可能使用它们的Conda-Forge发行版安装了所有的R包.有几个R包不可用,因此我使用:install.packages("marginaleffects", dep = TRUE, lib = "/Users/myuser/mambaforge/envs/myenv/lib/R/library", verbose = TRUE)
将它们安装在我所需的库路径的R中.然后,该包看起来存在于目录.../myenv/lib/R/library
、installed.packages()
中以及RStudio的包列表中.
然而,当我try 加载带有library(marginaleffects, lib.loc="/Users/myuser/mambaforge/envs/myenv/lib/R/library")
的包时,我收到了上面提到的错误.请注意,如果我在Streamlight应用程序中运行的R代码中导入此包,则会引发与.dylib
共享对象有关的略微不同的错误,而不是与‘.so’共享对象相关的错误.
RRuntimeError: Error: package or namespace load failed for ‘marginaleffects’ in library.dynam(lib, package, package.lib): shared object ‘marginaleffects.dylib’ not found
我有一种最模糊的感觉,这与一个编译器错误有关.我也没有成功地通过rpy2
框架安装包,收到了一条冗长且相当费解的错误消息.
EDIT个
到目前为止,我在MacOS(Ventura,在Big Sur上发生了相同的问题)上运行的代码可重现性:
zsh> mamba create -n myenv r-essentials r-base python=3.8
zsh> mamba activate myenv
zsh> mamba install -c r rpy2
zsh> mamba install -c conda-forge pandas
zsh> mamba install -c conda-forge streamlit
R> install.packages("clarify", dep = TRUE, lib = "/Users/myname/mambaforge/envs/myenv/lib/R/library", verbose = TRUE)
R> install.packages("marginaleffects", dep = TRUE, lib = "/Users/myname/mambaforge/envs/myenv/lib/R/library", verbose = TRUE)
R> library(marginaleffects, lib.loc="/Users/myuser/mambaforge/envs/myenv/lib/R/library")
Error: package or namespace load failed for ‘marginaleffects’ in library.dynam(lib, package, package.lib):
shared object ‘data_table.so’ not found
EDIT2个
我正在运行OSX-64.