Magrittr功能 - 如何打包它们?

时间:2015-07-16 22:54:11

标签: r function magrittr

我有两个关于在magrittr包&中编写函数的相关问题。包括在一个包中。

以正常的方式编写函数,如果任何步骤使用library(package.a)中的函数,则可以在函数调用中指定package.a。您如何在pipe环境(来自magrittr)中调用此内容?

问题的这一部分出现在我尝试打包我的函数时,我的一些函数使用magrittr的方法来创建函数。我无法将这些功能添加到包中。 Devtools包的combine功能无法识别%>%管道。基本上我不得不将它们重新写入普通函数以将它们包含在包中。你怎么克服这个?

1 个答案:

答案 0 :(得分:5)

更新您的NAMESPACE文件,请参阅1.5 Package namespaces 添加import(magrittr),不要忘记在Imports: magrittr文件中添加DESCRIPTION

关于您对::的评论 在使用import(magrittr)导入所有magrittr导出函数时,您不必使用::运算符指向包。
当然,只要您没有在包中创建具有相同名称的功能,该功能将覆盖导入包中的名称,那么您需要::
如果您使用::代替importFrom()并且未导入所需功能,则需要import() - 无论如何都不建议这样做。
您可能希望使用::的另一种情况是,当您使用SuggestsEnhances时,无论如何都不会在该问题的范围内。