Rのグローバル変数


回答:


174

クリスチャンの答えがassign()示すように、地球環境に割り当てる方法があります。より単純で、より短い(しかし、より良い...割り当てに固執する)方法は、<<-演算子 を使用することです。

    a <<- "new" 

関数内。


41
このアプローチは、実際にはグローバル環境ではなく、親スコープに保存されます。親スコープはグローバル環境と同じになる場合がありますが、ネストされた関数がたくさんある場合はそうではありません。
LunaticSoul 2015年

5
なぜassign優先されるの<<-ですか?
-Jasha

4
@Jasha <<-は、エンクロージャーのチェーンをグローバル環境まで検索し、最初に一致した変数に割り当てます。仮に、f()クロージャに入れ子にされた関数がg()あり、にa存在する場合、in g()を使用a <<-するf()と、グローバル環境ag()はなく、in に割り当てられます。ただし、これが必要な場合もあります。
ボブ

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.