r - 我们是否能够在 R 中生成已加载包的列表?

标签 r namespaces package loaded search-path

有没有可以在 R 中生成所需包列表的函数?类似于“pip freeze”的东西,所以我们可以快速复制环境?

最佳答案

谢谢你没有含糊。既然你提到了复制环境,这里有一些关于这些可用包的可用性和命名空间的信息。

除了@smci 提到的那些功能,.Packages将列出库位置路径中的所有可用包 lib.loc .和 find.package将显示包的路径。请记住 find.packages在确定包的可用性时可能会出现问题。 require是推荐的方法(见 ?find.package 解释)。

> x <- .packages(TRUE)
> head(x)
# [1] "assertthat"      "BH"              "car"             "data.table"     
# [5] "digest"          "dplyr"
> f <- find.package(x)
> sample(f, 5)
# [1] "/home/richard/R/x86_64-pc-linux-gnu-library/3.1/latticeExtra"  
# [2] "/home/richard/R/x86_64-pc-linux-gnu-library/3.1/Lahman"        
# [3] "/home/richard/R/x86_64-pc-linux-gnu-library/3.1/microbenchmark"
# [4] "/usr/lib/R/library/tools"                                      
# [5] "/home/richard/R/x86_64-pc-linux-gnu-library/3.1/knitr" 

有关 x 中这些包的命名空间的环境列表,您可以使用(除其他外)getNamespace
> sapply(x, getNamespace)[1:3]
# $assertthat
# <environment: namespace:assertthat>

# $BH
# <environment: namespace:BH>

# $car
# <environment: namespace:car>

关于r - 我们是否能够在 R 中生成已加载包的列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23439046/

相关文章:

r - 使用 R 和 rvest 抓取财务数据

r - 如何读取列中带有双引号的分号分隔文件?

r - 如何从另一个包中仅导入一个函数,而不加载整个命名空间

java - 获取不同项目中具有应用程序名称的包

r - 将包描述提取为 R 中的字符串

R read.table() 从 pc vs mac

c++ - C++ 中命名空间和友元的交互?

templates - 在模板命名空间前缀是未声明的 xsl 1.0

javascript - 如何在 Angular 库的 node_modules 文件夹之外使用 *.d.ts?

r - 在Windows R中设置C编译器(CC)