繁体   English   中英

R中的库和包有什么区别?

[英]What is the difference between a library and a package in R?

R之间有什么区别?

我遇到过人们在库中引用包的帖子。 根据这个想法,我将其解释为一个包存在于一个库中(即我将我的包存储在一个指定的库中)。 但是当我想使用包'x'时,我感到困惑。

  • 我需要调用库函数来获取包'x'才能使用吗?
  • 一旦我调用了包'x' ,那么'x'包的功能就可供我使用了?

在R中,包是R函数,数据和编译代码的集合。 存储包的位置称为库。 如果您需要特定功能,则可以从相应的站点下载该程序包,它将存储在您的库中。 要实际使用该包,请使用命令“library(package)”,该命令使您可以使用该包。 然后只需调用相应的包函数等。

1. 包装

包扩展了基本的R功能并标准化了代码的分发。 例如,包可以包含与特定主题相关的一组功能。

包可以作为SOURCE(包含所有包组件的目录),BINARIES(包含OS特定格式的文件)或作为BUNDLE(包含包组件的压缩文件,类似于源)进行分发。

最基本的包,例如创建,

library(devtools)
create("C:/Users/Documents/R-dev/MyPackage")

包含:

所有R代码所在的R /目录,以及DESCRIPTIONNAMESPACE元数据文件。

2. 图书馆

库是存储包的目录。 您可以在硬盘上安装多个库。

要查看哪些库可用(搜索哪些路径包):

.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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM