从自定义目录加载R包

rlh*_*lh2 24 installation r package

如果我从CRAN网站下载"package-name".tar.gz文件,gunzip并将其解压缩到自定义目录中,如何从R中加载该包?我无法在R安装目录中解压缩该文件.

f3l*_*lix 48

尝试使用Hadley Wickham的devtools,它允许从给定目录加载包:

library(devtools)

# load package w/o installing
load_all('/some/package/diR')

# or invoke 'R CMD INSTALL'
install('/some/package/diR')
Run Code Online (Sandbox Code Playgroud)

  • `错误:无法安装到srcdir包'RPostgreSQL'*删除'/ usr/local/lib/R/site-library/RPostgreSQL'错误:命令失败(1)`:-( (2认同)

Jor*_*eys 6

请在操作系统上添加一些额外信息.如果你在Windows上,你需要从源代码构建Rtools(http://www.murdoch-sutherland.com/Rtools/).有关如何安装所需内容的更多信息,请访问该网站.

即使你在Linux上,只需提取包文件也行不通.可能存在底层C代码(MSBVAR包的情况),甚至必须处理R代码才能构建到可以直接加载library()函数的包中.

另外,您必须考虑到要安装的软件包可能具有依赖项.对于MSBVAR包,这些是包codabit.从源代码构建时,您需要确保所有依赖项都已安装,否则您可能会遇到错误.

除了R CMD INSTALL,您可以在R内尝试:

# from CRAN
install.packages("MSBVAR", type="source")
# from a local file 
install.packages("/my/dir/MSBVAR.tar.gz",repos=NULL, type="source")
Run Code Online (Sandbox Code Playgroud)

或者为什么不做

# from CRAN
install.packages("MSBVAR")
Run Code Online (Sandbox Code Playgroud)

这完全没问题.


Dan*_*anc 6

您需要将软件包安装到您有权读取和写入的目录中.首先,将软件包下载到易于访问的目录中.如果您使用的是Linux/Mac,请尝试在主目录中创建名为"rlib"的目录.

cd ~; mkdir rlib
R CMD INSTALL MSBVAR.tar.gz --library=rlib
Run Code Online (Sandbox Code Playgroud)

如果您希望从R安装软件包,请执行以下操作:

## From CRAN
install.packages("MSBVAR", lib="~/rlib")
Run Code Online (Sandbox Code Playgroud)