回答:
クリスチャンの答えがassign()示すように、地球環境に割り当てる方法があります。より単純で、より短い(しかし、より良い...割り当てに固執する)方法は、<<-演算子 を使用することです。
a <<- "new"
関数内。
assign優先されるの<<-ですか?
<<-は、エンクロージャーのチェーンをグローバル環境まで検索し、最初に一致した変数に割り当てます。仮に、f()クロージャに入れ子にされた関数がg()あり、にa存在する場合、in g()を使用a <<-するf()と、グローバル環境aでg()はなく、in に割り当てられます。ただし、これが必要な場合もあります。
assignを介してメーリングリストの投稿にグローバル変数を設定する方法の解決策を見つけました。
a <- "old"
test <- function () {
assign("a", "new", envir = .GlobalEnv)
}
test()
a # display the new value