0

別の言い方をすれば、関数の環境の名前を取得するにはどうすればよいですか (それを囲む環境ではありません)。

関数の結果を関数内の特定の名前に割り当てようとしています。この名前は、GlobalEnv に含まれていてはなりません。それでも私は名前を気にします。なぜなら、私は処理するdeparse(substitute(x))ので名前を理解する必要があるからです。

現時点では、関数内に環境を作成するだけですが、これは一種の回避策だと感じています。

createList <- function(...,nm="nameString"){
myList <- list(...)
e1 <- new.env()
assign(nm,myList,envir=e1)
# obviously this does not make much sense
# just want to show that the envir thing works
e1[[nm]]
}

これを簡単に行う方法はありますか?結果ではなく、関数内の特定の名前に変数を割り当てます。environment(createList)関数自体が存在する環境であるback を返すだけ.GlobalEnvですが、関数内の変数が存在する環境がどのように呼び出されるかを知りたいです。

4

1 に答える 1

1

あなたenvironment()が欲しいものですか?

createList <- function(...,nm="nameString"){
  myList <- list(...)
  assign(nm,myList,envir=environment())
  get(nm)
}
于 2013-09-25T20:23:32.330 に答える