![](/img/trans.png)
[英]What is the difference between library()/require() and source() in r?
[英]What is the difference between a library and a package in R?
在R
, 库和包之间有什么区别?
我遇到过人们在库中引用包的帖子。 根据这个想法,我将其解释为一个包存在于一个库中(即我将我的包存储在一个指定的库中)。 但是当我想使用包'x'时,我感到困惑。
在R中,包是R函数,数据和编译代码的集合。 存储包的位置称为库。 如果您需要特定功能,则可以从相应的站点下载该程序包,它将存储在您的库中。 要实际使用该包,请使用命令“library(package)”,该命令使您可以使用该包。 然后只需调用相应的包函数等。
包扩展了基本的R功能并标准化了代码的分发。 例如,包可以包含与特定主题相关的一组功能。
包可以作为SOURCE(包含所有包组件的目录),BINARIES(包含OS特定格式的文件)或作为BUNDLE(包含包组件的压缩文件,类似于源)进行分发。
最基本的包,例如创建,
library(devtools)
create("C:/Users/Documents/R-dev/MyPackage")
包含:
所有R代码所在的R /目录,以及DESCRIPTION和NAMESPACE元数据文件。
库是存储包的目录。 您可以在硬盘上安装多个库。
要查看哪些库可用(搜索哪些路径包):
.libPaths()
并查看哪些包有:
lapply(.libPaths(), dir)
要使用包' x ',首先必须将其安装在包库中。 例如,这可以通过以下方式完成:
install.packages(‘x’) # to install packages from CRAN
要么
R CMD INSTALL Xpackagename.tar.gz #to install directly from source
安装后,必须使用library(x)
或require(x)
将其加载到内存中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.