R CMD checkでno visible binding for global variable 'hoge'
久しぶりにCRANにアップしようと思ったら、R CMD checkで以下のようなのが出てきたのでメモ。
* checking R code for possible problems ... NOTE [関数名]: no visible binding for global variable '[変数名]' ...
注意されてる変数を関数内で初期化すればオッケーなのだが、
plyrとかで使う変数に対しても上記のメッセージが出てしまう。
例えば、関数内で作ったデータフレームを使って、
res <- ddply(data, .(id), summarize, avg=mean(a))
というコードを書いてると、
* checking R code for possible problems ... NOTE [関数名]: no visible binding for global variable 'id' [関数名]: no visible binding for global variable 'a'
って出てしまう。
少し気持ち悪いけど、これも初期化してしまえば、とりあえずメッセージは出なくなる。
id <- NULL a <- NULL; res <- ddply(data, .(id), summarize, avg=mean(a))