[R] Creating and assigning variable names in loop

aajit75 aajit75 at yahoo.co.in
Wed Dec 21 11:01:12 CET 2011


Hello List

I am trying to create and assign variable names in loop, but not able to get
expected variable names. 

Here is the sample code

n = 10
set.seed(1)
x1 = rnorm(n,0)
x2 = rnorm(n,0)
samp_data <- data.frame(x1,x2)

for( i in 1:3) { 
    label <- paste("score", i, sep="_") 
    assign(label, value =x1+(x2*i) ) 
    samp_data <- cbind(samp_data, get(label)) 
}

> head(samp_data)
          x1                    x2          get(label)     get(label)  
get(label)
1 -0.6264538  1.51178117  0.8853274  2.3971085  3.9088897
2  0.1836433  0.38984324  0.5734866  0.9633298  1.3531730
3 -0.8356286 -0.62124058 -1.4568692 -2.0781098 -2.6993504
4  1.5952808 -2.21469989 -0.6194191 -2.8341190 -5.0488189
5  0.3295078  1.12493092  1.4544387  2.5793696  3.7043005
6 -0.8204684 -0.04493361 -0.8654020 -0.9103356 -0.9552692

I am expecting new variables to be created in the samp_data are
score_1   score_2   score_3, instead get(label)   get(label)   get(label)
Where am I going wrong?

Thanks in advance
~Ajit

--
View this message in context: http://r.789695.n4.nabble.com/Creating-and-assigning-variable-names-in-loop-tp4221080p4221080.html
Sent from the R help mailing list archive at Nabble.com.



More information about the R-help mailing list