On 09/05/2014, 6:54 AM, Rainer M Krug wrote:
How can I access an object in an attached but deleted environment, when the object also exists in the .GolbalEnv?
Attaching a variable to the search list generally makes a copy of it, so it can't be "attached but deleted". However, "making a copy" of an environment just copies the reference to it, so your environment still exists on the search list, it just doesn't have a name in the global environment.
I hope the example below makes the question clear: --8<---------------cut here---------------start------------->8--- tmp <- attach(what=NULL, name="org:variables") tmp$test = 13 rm(tmp) test # > 13 test <- 24 test # > 24 ls(all=TRUE) # > character(0)
I don't know why you would have seen character(0) here. You should have seen "test" in the list, because you created it a couple of lines earlier.
# # how can I access the variable test in the object org:variables in the # search path? # rm(test) test # > 13 --8<---------------cut here---------------end--------------->8--- Any suggestions?
You can use assign, or get a reference to the environment using as.environment("org:variables"), and access it within that. For example,
assign("test", 24, pos="org:variables") or e <- as.environment("org:variables") e$test <- 24 Duncan Murdoch ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel