[R] How to translate string to variable inside a command in an easy way in R
    UriB 
    uriblass at gmail.com
       
    Wed Jul 13 13:03:17 CEST 2011
    
    
  
Greg Snow-2 wrote:
"You are suffering from the fact that the longest distance between 2 points
is a shortcut. 
The df$column notation is a shortcut for df[[column]] that has some nice
properties, but the shortcut gets in the way when you want to do something
more structured.  Try qq1[[z]]==y and avoid all that pasting, parsing, and
evaluating. "
My response:
Unfortunately I find it to be not correct and unfortunately I see no way to
avoid pasting parsing and evaluating in order
to have functions that does simple things in R. 
temp<-qq1[qq1$PrimaryConditionGroup=="AMI",]
has no error when 
temp<-qq1[qq1[[PrimaryConditionGroup]]=="AMI",] cause the following error
announcement
"Error in (function(x, i, exact) if (is.matrix(i)) as.matrix(x)[[i]] else
.subset2(x,  : 
  object 'PrimaryConditionGroup' not found"
I found no way to replace the function that was in the subject of this
thread by something simpler(and here is the function again)
> ugly<-function(y,z) 
> { 
>   text1<-paste("temp<-qq1[qq1$",z,sep="") 
>   text1<-paste(text1,"==y",sep="") 
>   text1<-paste(text1,",]",sep="") 
>   eval(parse(text=text1)) 
>   temp<<-temp 
> } 
--
View this message in context: http://r.789695.n4.nabble.com/How-to-translate-string-to-variable-inside-a-command-in-an-easy-way-in-R-tp3645594p3664747.html
Sent from the R help mailing list archive at Nabble.com.
    
    
More information about the R-help
mailing list