我正在使用devtools::check()对我正在编写的包运行R CMD检查,并且在检查中遇到了以下注释:
* checking R code for possible problems ... NOTE prep: no visible global function definition for 'one_of'
我在prep()中唯一使用one_of的地方是下面这一行:
raw_data <- dplyr::select(raw_data, -one_of(drop_vars))
有人知道如何解决这个NOTE问题吗?
下面是我的DESCRIPTION和NAMESPACE文件。
任何帮助都将不胜感激
下面是我的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("^[^\\.]")发布于 2015-08-18 20:35:13
one_of不是从dplyr导出的函数,因此您不能在包中使用它。
正如this vignette (我建议您阅读它)中所说的,最好使用dplyr编程,使用下划线的变体,如select_。
尝尝这个
raw_data <- dplyr::select_(raw_data, "-one_of(drop_vars)")另外,我会避免在包代码中使用管道操作符。它旨在交互式使用,而不是在函数中使用。
https://stackoverflow.com/questions/32069800
复制相似问题