【问题标题】:Loading R packages automatically while preserving the portability of my code自动加载 R 包,同时保持代码的可移植性
【发布时间】:2019-04-08 21:13:15
【问题描述】:

我之前使用Rprofile.site 加载我最喜欢的包(例如dplyrtidyr)。然而,许多来源使用Rprofile.site 来达到此目的会降低代码的可移植性。我的解决方案是每次加载 R 时运行source('C:/...startup.script.R')。这个启动脚本运行require() 用于我经常使用的包和我的自定义函数的自定义包。这可行,但为了与其他人共享我的脚本,我需要共享感兴趣的脚本、我的自定义包和 startup.script.R 脚​​本。

我想设计我的自定义包,使其自动加载我最喜欢的 CRAN 功能。我可以在我的包DESCRIPTION 文件中使用Depends: dplyr, tidyrImports: dplyr, tidyr。这会违反最佳做法吗?

【问题讨论】:

    标签: r package


    【解决方案1】:

    您可以为此使用packrat 库,Hadley, Wickam 推荐了它。它使代码保持干净。

    查看此链接 - Packrat

    【讨论】:

      【解决方案2】:

      Software Engineer Stackexchange 上讨论了这个问题后,我决定使用Imports:magrittr 作为加载我所有自定义包依赖项的最小和最广泛使用的包。

      【讨论】:

        最近更新 更多