进口和取决于

时间:2012-03-27 16:34:24

标签: r package import depends

我已阅读了两篇最近讨论取决于进口和进口的帖子

但我有四个挥之不去的相关问题:

  1. 假设我希望最终用户在我的包中加载时也可以使用两个包。在这种情况下,是否有充分的理由不使用Depends? (这里的要点是通过只加载一个包的命令加载所有三个包。)

  2. 是否可以在Depends和Imports字段中指定包裹?

  3. 如果在Depends中列出了一个包,是否还要在Imports中列出它?或者使用Depends已经取消了Imports的好处?

  4. 以下是否正确?当且仅当在NAMESPACE文件中导入(全部或部分)包时,才应在DESCRIPTION文件的Imports字段中列出包。

  5. 非常感谢!

    大卫

1 个答案:

答案 0 :(得分:11)

有几点,我承认我有时也会觉得这有点困惑。但我最近重新审视过,这是我的看法:

  1. “取决于”是我们过去常常做的事情;它最接近“只加载所有三个”:当你的第三个取决于其他两个时,所有三个都将被加载。

  2. 使用命名空间,我们也可以导入。这仅引入所述符号,其可以是数据或函数。我有时会用它;它不会加载您导入的其他包,只是使所述符号可用。因此,它比“Depends”更“轻”。

  3. 如果您选择,则无需进口。

  4. 这是正确的:如果您在NAMESPACE中使用声明从其他包导入符号,则需要在导入中列出其他包:在描述文件中。