implicit return? [R for BE/BA]

posted by ElMaestro  – Belgium?, 2019-04-29 07:40  – Posting: # 20260
Views: 2,381

Hi Hötzi,


Interestingly (at least to moi!), I tried out of curiosity to do this:

QWERTY=function(x)
{
 ifelse ((x==0), "foo", "bar")
}


The benchmark for this version is much, much slower than any of the other proposals (at least on my system). Another example that shows that condensing code towards fewer keystrokes is not always fastest. I wonder what goes on internally since this is much slower? Perhaps space is allocated for both "foo" and "bar" in memory and then there is a decision as to which one to throw away and which one to keep on the CPU stack? I don't have a very good at understanding of these things.

This one is appearing even worse:
QWERTY2=function(x)
{
 ifelse (x, "bar", "foo")
}


I have no idea why QWERTY2 would not outperform QWERTY or at least be the same if R has a kind of optimiser in the interpreter. Would you happen know????

I could be wrong, but...
Best regards,
ElMaestro

Complete thread:

Activity
 Admin contact
20,138 posts in 4,246 threads, 1,386 registered users;
online 20 (0 registered, 20 guests [including 10 identified bots]).
Forum time (Europe/Vienna): 06:47 UTC

The fundamental cause of trouble in the world today is
that the stupid are cocksure
while the intelligent are full of doubt.    Bertrand Russell

The Bioequivalence and Bioavailability Forum is hosted by
BEBAC Ing. Helmut Schütz
HTML5