使用R CMD测试软件包的代码时,请使用非标准评估" no visible binding for global variable ..."为dplyr函数内使用的每个变量显示以下注释:例如,如果我使用
cars %>% mutate(speedplusone = speed +1)
Run Code Online (Sandbox Code Playgroud)
R CMD检查将给出注释:
no visible binding for global variable speed
Run Code Online (Sandbox Code Playgroud)
删除这些注释的问题已经被询问过,Hadley给出了答复,可以选择使用标准评估重写调用或通过调用伪造这些变量的存在globalVariables()。
根据Hadley的回答,我可以使用标准评估来删除那些R CMD Check注释,替换mutate为mutate_:
cars %>% mutate_(speedplusone = ~speed +1)
Run Code Online (Sandbox Code Playgroud)
我是否应该重写软件包中的所有dplyr函数调用,以完全避免非标准评估?