r - 如何在 plr(PostgreSQL R 扩展)中从 R_LIBS_USER 加载 R 库

标签 r postgresql

我已经在 $R_LIBS_USER 中安装了几个库。不幸的是,所有这些库都无法加载到 PL/R 中。看来我只能加载 $R_LIBS_SITE 中的库。

是否可以通过 PL/R 的一些配置直接使用 $R_LIBS_USER 中的库?

PostgreSQL 的登录用户是我当前的用户,已被授予 super 用户。这是 SELECT * FROM plr_environ(); 的结果:

 PG_GRANDPARENT_PID | 29232
 PWD                | /var/lib/postgresql
 PGLOCALEDIR        | /usr/share/locale
 LANG               | en_US.UTF-8
 PGSYSCONFDIR       | /etc/postgresql-common
 SHLVL              | 1
 PGDATA             | /var/lib/postgresql/9.3/main
 _                  | /usr/lib/postgresql/9.3/bin/postgres
 LC_COLLATE         | en_US.UTF-8
 LC_CTYPE           | en_US.UTF-8
 LC_MESSAGES        | en_US.UTF-8
 LC_MONETARY        | C
 LC_NUMERIC         | C
 LC_TIME            | C
 R_HOME             | /usr/lib/R
 R_PLATFORM         | x86_64-pc-linux-gnu
 R_PAPERSIZE_USER   | a4
 R_PAPERSIZE        | letter
 R_PRINTCMD         | /usr/bin/lpr
 R_RD4PDF           | times,inconsolata,hyper
 R_TEXI2DVICMD      | /usr/bin/texi2dvi
 R_GZIPCMD          | /bin/gzip
 R_UNZIPCMD         | /usr/bin/unzip
 R_ZIPCMD           | /usr/bin/zip
 R_BZIPCMD          | /bin/bzip2
 R_BROWSER          | xdg-open
 EDITOR             | vi
 PAGER              | /usr/bin/pager
 R_PDFVIEWER        | /usr/bin/xdg-open
 LN_S               | ln -s
 MAKE               | make
 SED                | /bin/sed
 TAR                | /bin/tar
 R_SYSTEM_ABI       | linux,gcc,gxx,gfortran,?
 R_LIBS_USER        | ~/R/x86_64-pc-linux-gnu-library/3.2
 R_LIBS_SITE        | /usr/local/lib/R/site-library:/usr/lib/R/site-library:/usr/lib/R/library
 R_SESSION_TMPDIR   | /tmp/RtmpB5KlAx
(37 rows)

最佳答案

我找到了一个解决方案可以临时设置lib的搜索路径。

CREATE OR REPLACE FUNCTION r_libpaths()  RETURNS text[] AS ' .libPaths(‘xxxxx’)
'  LANGUAGE  plr;
select r_libpaths();

这里,'xxx'是库的新路径。欢迎任何永久修改它的建议。

它在我的笔记本电脑上工作,但在我公司的虚拟机上再次失败。后面我会贴上这个环境的sessioninfo。

我终于找到了我的主目录对其他用户没有读取权限的原因。它可以通过 chmod 命令修复。然后,PL/R 可以从 R_LIBS_USER 加载库。

关于r - 如何在 plr(PostgreSQL R 扩展)中从 R_LIBS_USER 加载 R 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30881888/

相关文章:

postgresql - 使sonarqube连接到unix套接字

r - 将 broom::glance() 与 glmmTMB 结合使用

r - 从R Shiny App中的 react 性data()调用变量

r - scale_gradientn 中的陡峭梯度

python - SQLAlchemy中如何设置复杂条件复合外键

php - 使用 PDO 获取列类型(getColumnMeta is/slow/)

r - 初学者 R 类(class)的结构

regex - 如何在 R 中的字符串中搜索美元符号?

ruby-on-rails - 在 PostgreSQL 和 Ruby Object Mapper 中使用 UTF-8 字符的正确方法是什么?

postgresql - 为我的 .NET 应用程序选择哪种 PostgreSQL 变体?