この質問は、本質的に同じ問題を扱っている他のさまざまな質問から来ています。奇妙な理由で、別の関数内で関数を使用すると、最初の関数のローカル環境内で定義された変数が2番目の関数で見つからないという意味で失敗することがあります。
擬似コードの古典的なパターン:
ff <- function(x){
y <- some_value
some_function(y)
}
ff(x)
eval(expr、envir、enclos)のエラー:オブジェクト'y'が見つかりません
最初は、S4メソッドとそのスコープと関係があると思いましたが、他の関数でも発生します。私はR開発チームと何らかのやり取りをしましたが、彼らが行ったのはバグレポートサイトに私を導くことだけでした(これは最も魅力的なサイトではありません、私は言わなければなりません)。フィードバックはありませんでした。
問題が発生し続けるので、論理的な説明があるのではないかと思います。これらすべての場合によくある間違いですか?もしそうなら、どれですか?それとも本当にバグですか?
それらの質問のいくつか:
- 機能と環境の使用
- doByパッケージの一部であるtransformBy()を使用したR(統計)スコープエラー。
- Rの関数内でacast(reshape2)を使用するにはどうすればよいですか?
- データセットを関数に渡せないのはなぜですか?
- 値が次のローカル環境にコピーされない
PS:あなたが疑問に思った場合に備えて、私はR-develリストを知っています...