[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Efficiently reuse code in org babel with R
From: |
Greg Minshall |
Subject: |
Re: Efficiently reuse code in org babel with R |
Date: |
Thu, 07 Jul 2022 09:22:35 +0300 |
Naresh,
> I want to source some data from databases, then use this data in
> various blocks. I am looking for the most efficient way to achieve
> this. In below blocks, is the code in block ``connection'' executed
> thrice (economy of code but no saving of time) or is it only executed
> once then used twice? If the code is run thrice, is there another way
> to create code blocks so that the code is executed only once?
if you export this "file", the "connection" block will execute three
times.
Vikas suggested a session, which is something i often do for interactive
work.
or, the R code in "connection" could also use R variables to protect
itself against multiple executions.
or, i suppose you could invoke "connection" via a :var variable (rather
than via =<<connection>>), and use the :cache keyword to restrict
connection's evaluation to "every now and then" (for a very
precisely-defined, if not always intuitively definition of "every now
and then"). you'd have to be careful to not get bitten by the code
*not* being evaluated, and by it being evaluated too often. (probably
too clever by half.)
hth, cheers, Greg