[R] Assigning variables using a loop

From: Nick Mosely <mosely_at_uw.edu>
Date: Sat, 23 Apr 2011 10:51:22 -0700


Hello R-world,

I have multiple variables that have been generated within a function. I would like to assign them each to the Global Environment. I've tried the following:

x = 1
y = 2
z = 3

for (i in c(x,y,z)) {
  assign("i",i,pos=.GlobalEnv)
}
i
[1] 3

Obviously, the problem is that the code is assigning numbers to the the new variable i. I tried to get cute using paste:

> x = 1
> y = 2
> z = 3
> for (i in c(x,y,z)) {
+ assign(paste(i),i,pos=.GlobalEnv)
+ }

But paste enters "1" when i is x, rather than the desired "x". Does anyone know of a solution to this problem?

Thanks,

Nick



R-help_at_r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code. Received on Sat 23 Apr 2011 - 20:41:41 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Sat 23 Apr 2011 - 21:10:33 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.

list of date sections of archive