R 在包内函数生成缺少可见绑定的警告

R 在包内函数生成缺少可见绑定的警告,r,binding,scope,package,with-statement,R,Binding,Scope,Package,With Statement,在包中的函数中使用witin将强制返回R CMD check上的警告 雷普雷克斯 职能: # Test within hello <- function(x = data.frame(valA = 1, valB = 2)) { within(data = x, expr = { res = valA + valB }) } 解决方法(解决方案) 添加valA一种解决方案是将globalVariables(c('valA

在包中的函数中使用
witin
将强制返回
R CMD check
上的警告

雷普雷克斯 职能:

# Test within

hello <- function(x = data.frame(valA = 1, valB = 2)) {
  within(data = x,
         expr = {
             res = valA + valB
         })
}
解决方法(解决方案)
添加
valA一种解决方案是将
globalVariables(c('valA','valB'))
包含在包中的某个位置,例如
R
文件夹中的一个单独的
.R
文件中

否则我会:

hello <- function(valA = 1, valB = 2) {

  within(data = data.frame(valA, valB),
         expr = {
           res = valA + valB
         })
}

您好,我知道-这是一个肮脏的黑客行为,但不幸的是,如果在CRAN检查上下文中没有定义为参数,那么函数特定变量就不可能存在。。。
hello <- function(x = data.frame(valA = 1, valB = 2)) {
    valA <- valB <- NULL

  within(data = x,
         expr = {
             res = valA + valB
         })
}
hello <- function(valA = 1, valB = 2) {

  within(data = data.frame(valA, valB),
         expr = {
           res = valA + valB
         })
}