我正在写一个包。如何在调用库(my_package)时加载其他包呢?

时间:2015-07-07 17:12:11

标签: r

标题应该很清楚我希望。我正在编写一个名为forecasting的包,其中包含dplyr的导入。通过写入描述文件的导入,我可以强制将这些其他包与forecasting一起安装 - 是否有相同的方法来加载包?换句话说,当我使用library(forecasting)加载我的包时,它是否会自动加载dplyr和其他包?

由于

2 个答案:

答案 0 :(得分:2)

重读"编写R扩展"。 Depends:强制强制初始安装以及依赖包的加载

但是现在您需要Imports:以及importFrom()文件中的NAMESPACE更精细。

但首先要做的事情是:让它与Depends合作。

答案 1 :(得分:0)

修改 你纠正的错误,我引用的文档不是主要来源。也许这更好:

来自R documentation

  

'Depends'字段给出了这个包所依赖的逗号分隔的包名列表。当调用library或require时,这些包将被附加到当前包之前。

  

“Imports”字段列出从其导入名称空间的包(在NAMESPACE文件中指定)但不需要附加的包。 “::”和“:::”运算符访问的命名空间必须在此处列出,或者在“建议”或“增强”中列出

<强>原始

来自R packages documentation

  

在此处添加包依赖[描述文件]确保它将被安装。但是,这并不意味着它将与您的包一起附加(即库(x))。 最佳做法是使用语法package :: function()显式引用外部函数。这样可以非常轻松地识别出包装外的哪些功能。这在将来阅读代码时特别有用。