我有一个类似的问题,就像这里已经讨论过的一样: Novisible绑定for全局变量Note in R CMD check
就我而言,我在自己的包中使用 ddply 函数,当我检查 R 包时,我得到一条注释:“全局变量‘VARX’没有可见的绑定。
所寻址的代码行是:
subsample <- ddply(my_data, .(VARX), function(x){x[sample(nrow(x), 1), ]})
Run Code Online (Sandbox Code Playgroud)
变量 VARX 是包 (sysdata) 提供的数据帧中的一列。改进代码以获得适当的 R 包的良好做法是什么?
该问题与 无关ddply
,只是它VARX
不是当前工作区中的有效对象,因为它是 中的列my_data
。您链接的问题中的建议也保留在这里,可能VARX = NULL
在您调用之前放置在某个位置subsample <- ddply(my_data, .(VARX), function(x){x[sample(nrow(x), 1), ]})
将解决这个问题,因为现在R CMD CHECK
看到有一个VARX
对象。这也不会干扰对的调用,ddply
因为作用域确保使用VARX
in ,而不是全局作用域中的 the。my_data
VARX