implicit return? [R for BE/BA]

posted by ElMaestro  – Denmark, 2019-04-29 09:40 (1006 d 05:03 ago) – Posting: # 20260
Views: 5,309

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

Pass or fail!
ElMaestro

Complete thread:

Activity
 Admin contact
21,858 posts in 4,574 threads, 1,554 registered users;
online 14 (0 registered, 14 guests [including 12 identified bots]).
Forum time: Saturday 13:43 CET (Europe/Vienna)

Truth in science can be defined as the working hypothesis best suited
to open the way to the next better one.    Konrad Lorenz

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