[R] What the difference between .Golbalenv and package:base?
John McKown
john.archie.mckown at gmail.com
Mon Aug 25 15:53:37 CEST 2014
On Mon, Aug 25, 2014 at 1:07 AM, PO SU <rhelpmaillist at 163.com> wrote:
>
>
> Dear rusers,
>
> As we know, there are a lot of environments in the search() path, such as .Golbalenv and package:base .
> And i can just use .Golbalenv$a ,.Golbalenv$b to use the virable, but i must use as.envrionment("package:base") to find virable, i feel it not very convenient.
>
>
> For example, when i use the following codes to add a new env into the search() path.
>
>
>
>> tmp<-attach(NULL,name="new_name")
>> assign("a",2,envir=as.environment("new_name"))
>> a
> [1] 2
>> as.environment("new_name")$a
> [1] 2
> I must always convert the name to the environment, How can i just use the following form:
>
>
>
>> tmp<-attach(NULL,name="new_name")
>> assign("a",2,envir=new_name) #like using .GlobalEnv
>> a
> [1] 2
>> new_name$a
>
> [1] 2
>
>
> --
>
> PO SU
> mail: desolator88 at 163.com
> Majored in Statistics from SJTU
You might want to try:
new_name <- new.env();
# or if you prefer (such as in a function)
assign("new_name",new.env(),envir=.GlobalEnv);
#
# You may now assign variable into this similar to:
new_name$a <- 2;
gvar <- new_name$a; # get the variable a from environment new_name
gvar <- get("a",envir=new_name); #same thing, but wordy
attach(new_name);
a
gvar <- a;
--
There is nothing more pleasant than traveling and meeting new people!
Genghis Khan
Maranatha! <><
John McKown
More information about the R-help
mailing list