要查看任何给定软件包导入了哪些软件包,我们可以访问手册,并在“ imports”下查看,或者如果存储库位于github上,则可以查看DESCRIPTION
文件,但是我们该怎么做这个用R代码?
例如,如果这样的函数被称为imports()
,并且在rvest包中被调用,则imports(rvest)
将返回类似
[1] httr (>= 0.5), magrittr, selectr
注意:查看软件包导入哪个软件包的一种不太优雅的方法是开始一个全新的R会话,查看已加载的软件包,然后加载有问题的软件包,并比较列表(如果还有更多的已加载软件包,这些是由相关程序包导入的)-但我不希望使用此方法,因为它将需要频繁启动新的R会话。
答案 0 :(得分:4)
您应该看一下packageDescription
R包中的utils
函数:https://stat.ethz.ch/R-manual/R-devel/library/utils/html/packageDescription.html。它正是这样做的,解析DESCRIPTION
文件并返回带有结果的命名列表。
答案 1 :(得分:1)
对于在CRAN(或某些指定的R存储库)上托管的软件包,此信息在available.packages()
返回的矩阵中已经很方便了:
a1 <- available.packages()
a1["rvest","Imports"]
## [1] "httr (>= 0.5), magrittr, selectr"