Hi Andreas,
Andreas Leha andreas.l...@med.uni-goettingen.de writes:
Hi Loris,
Loris Bennett loris.benn...@fu-berlin.de writes:
Hi,
Is it possible to pass a variable to a source block such that the
variable can be used as part of the name of the output file?
Currently I have
#+HEADER: :var data=timelimit-elapsed-data year=2011 :colnames yes
#+HEADER: :session *r* :file (org-babel-temp-file time-elapsed- .pdf)
which gets me a different name for each value of 'year', but ideally I
would like the files to be called
time-elapsed-2011.pdf
time-elapsed-2012.pdf
time-elapsed-2013.pdf
etc.
Can this be done?
Maybe not what you are looking for, but you could handle the assembly of
the filename within your code block.
Something like:
#+HEADER: :var year=2011 :session *r* :results file
#+begin_src R
filename - paste0(time-elapsed-, year, .pdf)
pdf(filename)
## your code
dev.off()
filename
#+end_src
Regards,
Andreas
Thanks, that is in fact exactly what I need. Looking at the
documentation again, I see that it says:
Some languages including R, gnuplot, dot, and ditaa provide special
handling of the :file header argument automatically wrapping the code
block body in the boilerplate code required to save output to the
specified file. This is often useful for saving graphical output of a
code block to the specified file.
I just didn't understand this at first. Maybe the following sentence
should/could be added:
... the specified file. This means that the argument of the :file
header can be omitted and the file name can be generated within the
source block.
Cheers,
Loris
--
This signature is currently under construction.