没有可见的全局函数定义' one_of'`

时间:2015-08-18 10:26:03

标签: r global-variables dplyr devtools

我正在使用devtools::check()运行R CMD检查我正在编写的包中,我在检查中遇到以下注意事项:

* checking R code for possible problems ... NOTE prep: no visible global function definition for 'one_of'

我在one_of中使用prep()的唯一地方就是这一行:

raw_data <- dplyr::select(raw_data, -one_of(drop_vars))

有谁知道如何解决这个NOTE

Bellow是我的DESCRIPTIONNAMESPACE个文件。

非常感谢任何帮助

以下是我的DESCRIPTION文件的样子:

Package: prepdat
Title: xxx
Version: 0.0.0.9000
Authors@R: person("Ayala S.", "Allon", email = "ayalaallon@gmail.com", role = c("aut", "cre"))
Description:xxx
Depends: R (>= 3.0.3)
License: GPL-3
LazyData: true
Imports: dplyr (>= 0.4.2),
    reshape2 (>= 1.4.1),
    psych(>= 1.5.4)
Suggests: knitr,
    testthat

以下是我的NAMESPACE文件的样子

importFrom(dplyr,"%>%")
importFrom(psych,"harmonic.mean")
exportPattern("^[^\\.]")

1 个答案:

答案 0 :(得分:0)

one_of不是dplyr的导出函数,因此您无法在包中使用它。

正如this vignette(我建议您阅读)中所述,最好使用dplyr等强制变体与select_进行编程。

试试这个

raw_data <- dplyr::select_(raw_data, "-one_of(drop_vars)")

另外,我应该避免在包代码中使用管道运算符。它旨在交互使用,而不是在功能中使用。