从自定义目录加载R包

时间:2011-03-17 13:39:36

标签: r installation package

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

6 个答案:

答案 0 :(得分:45)

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

library(devtools)

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

# or invoke 'R CMD INSTALL'
install('/some/package/diR')

答案 1 :(得分:6)

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

cd ~; mkdir rlib
R CMD INSTALL MSBVAR.tar.gz --library=rlib

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

## From CRAN
install.packages("MSBVAR", lib="~/rlib")

答案 2 :(得分:5)

请在操作系统上添加一些额外信息。如果您在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")

或者为什么不做呢

# from CRAN
install.packages("MSBVAR")

这完全没问题。

答案 3 :(得分:2)

您无法拨打R CMD INSTALL downloadedpackage.gz

据我了解,如果无法获得对R安装文件夹的写入权限,则应将该软件包安装在用户空间中

答案 4 :(得分:0)

你不需要解压缩或解压 只需在命令提示符下输入此命令,它就会解压缩到适当的位置

R CMD INSTALL [options] [l-lib] pkgs.tar.gz

解释here

然后你可以通过library(the_pkg)

在R中使用它

答案 5 :(得分:0)

从R 3.5.3开始,如果没有带以下命令的devtools,就有可能

library(mypkg, lib.loc = "f:/R-packages")