我想安装 R 包 RPostgresql 以连接到我在 Centos 8 上名为“crex”的 PostgreSQL 数据库。当我运行
> install.packages("RPostgreSQL")
在终端中,我收到以下错误:
Installing package into ‘/usr/lib64/R/library’
(as ‘lib’ is unspecified)
Warning in install.packages("RPostgreSQL") :
'lib = "/usr/lib64/R/library"' is not writable
Would you like to use a personal library instead? (yes/No/cancel)
从我收集到的消息中,我需要设置一个个人库,但我不确定其含义。我要做的是运行 ar 脚本,例如 new.r,它将从另一个 bash 脚本中调用。
新的.r:
require("RPostgreSQL")
pw <- {
"XXXX"
}
drv <- dbDriver("PostgreSQL")
con <- dbConnect(drv, dbname = "crex",
host = "localhost", port = 5432,
user = "postgres", password = pw)
rm(pw)
dbExistsTable(con, "work")
#other commands
Bash 脚本 b.txt:
#!/bin/bash
Rscript new.r
#other commands
有人可以帮忙吗?
R 想要在该默认路径中安装软件包。要么该路径不存在,要么您没有对其的写入权限。
将库安装在其他地方(例如,在个人库中)不是问题(从您通过 bash 运行 R 脚本的角度来看)。我不会担心这些库的安装位置,除非您稍后在加载它们时遇到特殊问题。一个可能的含义是,如果您从其他用户运行脚本,那么您可能需要再次安装到该用户可访问的路径中。