[R] Eval() or parse() do not work inside function
Jorge A. Ahumada
j.ahumada at conservation.org
Tue Jul 27 20:34:51 CEST 2010
I am writing a function where the arguments are names of objects or variable
names in a data frame. To convert the strings to the objects I am using
eval(parse(text=name)):
f.graph.two.vbs<-function(dataname,v1){
val<-paste(dataname,v1,sep="$")
val<-eval(parse(text=val))
val
}
However running this returns an error:
>f.graph.two.vbs("data","RECORD")
Error in data$RECORD : $ operator is invalid for atomic vectors
Repeating the individual commands in the workspace does work though.. Do I
need to pass the object data in the arguments for this to work?
Thanks,
Jorge
--
Jorge A. Ahumada
Technical Director
Tropical Ecology Assessment and Monitoring Network (TEAM)
Science and Knowledge Division
Conservation International
2011 Crystal Dr. Suite 500
Arlington, VA 22202
Phone: 703-341-2543
Mobile: 202-716-3374
http://www.teamnetwork.org/
More information about the R-help
mailing list