【问题标题】:import the same PACKAGE in several R files在多个 R 文件中导入相同的 PACKAGE
【发布时间】:2018-07-27 14:48:31
【问题描述】:

在写一个R包的时候,我需要导入另一个R包B。 我使用 roxygen2 作为文档。

我的问题是,如果我有几个使用包 B 的 R 函数, 我应该写吗

#' @import B

对于每个函数,否则只写一次很痛苦。

【问题讨论】:

  • 你试过只写一次吗?有问题吗?似乎很容易测试的东西。如果您有问题,请尝试给出具体的错误消息或简单的reproducible example,以便我们了解实际情况,以便给出更准确的答案。
  • 如果您尝试导入一个函数以在您的包中使用,那么您只需要使用一次@import [function to import]。然后,只要它也在您的说明文件中作为导入,它将在您的整个包中可用。通常我认为直接使用 :: 来引用包更容易
  • 一次导入就足够了,但你可以多次导入而不会出现问题(例如,如果你想复制粘贴到另一个包中,这很有用)。

标签: r roxygen2


【解决方案1】:

如cmets中所说,只需要导入一次,但多次导入不会有任何问题。

如果您不想在每个函数中都导入它,但又担心将其绑定到单个函数(如果您只在函数 foo 上导入它,但后来您决定将 foo 替换为 @ 987654323@ 并丢失导入)您可以将所有共享导入语句添加到文档顶部的NULL

#' @import ggplot2
#' @import B
#' @import dplyr
NULL

roxygen2 会很乐意在 NAMESPACE 中创建正确的导入语句,但是您只会在方便的地方列出一次导入,而不会将它们绑定到任何特定的包

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-05-14
    • 1970-01-01
    • 2018-11-22
    • 1970-01-01
    • 1970-01-01
    • 2012-12-29
    • 2018-03-30
    • 1970-01-01
    相关资源
    最近更新 更多