Hello all,

I have some trouble in reconstructing a valid expression within a
function,
here is my question.

I am building a function :

SUB<-function(DF,subset=TRUE) {
#where DF is a data frame, with Var1, Var2, Fact1, Fact2, Fact3
#and subset would be an expression, eg. Fact3 == 1 

#in a first time I want to build a subset from DF
#I managed to, with an expression like eg. DF$Fact3,
# but I would like to skip the DF$ for convenience
# so I tried something like this :

tabsub<-deparse(substitute(subset))
dDF<-deparse(substitute(DF))

if (tabsub[1]!="TRUE") {
subset<-paste(dDF,"$",tabsub,sep="")}

#At this point, I have a string that seems to be the expression that I
want
sDF<-subset(DF, subset)
}

#But I have an error message :
>Error in r & !is.na(r) : operations are possible only for numeric or
logical types


I can not understand why is that, even after I've tried to convert
properly the string into an expression.
I've been all the day trying to sort that problem ...
Maybe this attempt is ackward and I have not understood what is really
behind an expression. 
But if anyone could give me a tip concerning this problem or point me to
relevant references, I would really appreciate.

Thanks
Pascal Boisson
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

DISCLAIMER:\ 
\ This email is from the Scottish Crop Researc...{{dropped}}

______________________________________________
R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html

Reply via email to