[R] Making an if condition variable ?

Martin Maechler
Thu, 02 Jun 2016 06:48:14 -0000

>>>>> Jim Lemon <drjimlemon at gmail.com>
>>>>>     on Thu, 2 Jun 2016 13:03:01 +1000 writes:

    > 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 :

> fortune(106)

If the answer is parse() you should usually rethink the question.
   -- Thomas Lumley
      R-help (February 2005)

> fortune(181)

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