Skip to content

Making an if condition variable ?

7 messages · ce, Jim Lemon, Ista Zahn +4 more

ce
#
Dear all,

I want to make an if condition variable like :

a = 10
CONDITION = " a > 0 "

if ( CONDITION ) print(" a is bigger" ) 

I tried get , getElement , eval without success ?

Thanks
#
Hi ce,

a<-10
condition<-expression("a>0")
if(eval(parse(text=condition))) cat("a>0\n")

Jim
On Thu, Jun 2, 2016 at 12:30 PM, ce <zadig_1 at excite.com> wrote:
#
if ( eval(parse(text=CONDITION ))) print(" a is bigger" )

Best,
Ista
On Jun 1, 2016 10:32 PM, "ce" <zadig_1 at excite.com> wrote:

            

  
  
#
Beware of getting too "meta" in your programming... it is rarely worth it. Just write the code and move on with life. That is the beauty of a scripting language.
#
a <- 10
CONDITION <-  (a > 0)

if ( CONDITION ) print(" a is bigger" )
On Wed, Jun 1, 2016 at 10:30 PM, ce <zadig_1 at excite.com> wrote:
#
> Hi ce,

    > a<-10
    > condition<-expression("a>0")
    > if(eval(parse(text=condition))) cat("a>0\n")

While this may answer the question asked,
the above is *not* good advice, excuse me, Jim :
If the answer is parse() you should usually rethink the question.
   -- Thomas Lumley
      R-help (February 2005)
Personally I have never regretted trying not to underestimate my own future stupidity.
   -- Greg Snow (explaining why eval(parse(...)) is often suboptimal, answering a question
      triggered by the infamous fortune(106))
      R-help (January 2007)

---------------------

Good advice would emphasize to use  expressions rather than
strings.... and yes that's a bit more sophistication.

But it's worth it.
Martin
> Jim
> On Thu, Jun 2, 2016 at 12:30 PM, ce <zadig_1 at excite.com> wrote:
>> 
    >> Dear all,
    >> 
    >> I want to make an if condition variable like :
    >> 
    >> a = 10
    >> CONDITION = " a > 0 "
    >> 
    >> if ( CONDITION ) print(" a is bigger" )
    >> 
    >> I tried get , getElement , eval without success ?
    >> 
    >> Thanks
    >> 
    >> ______________________________________________
    >> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
    >> 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.

    > ______________________________________________
    > R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
    > 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.
#
Jeff Newmiller <jdnewmil at dcn.davis.ca.us> writes:
+1

I think this a very common pitfall (I know it from own experience...)
and I would say a candidate for a fortune?

Rainer