[R] Sweave question: prevent expansion of unevaluated reused code chunk

Duncan Murdoch murdoch at stats.uwo.ca
Wed Mar 14 11:53:13 CET 2007


On 3/13/2007 7:02 PM, Kevin R. Coombes wrote:
> Hi,
> 
> Consider the following (much simplified) Sweave example:
> 
> --------------
> 
> First, we set the value of $x$:
> <<chunk1,eval=FALSE>>=
> x <- 1
> @
> 
> Then we set the value of $y$:
> <<chunk2,eval=FALSE>>=
> y <- 2
> @
> 
> Thus, the overall algorithm has this structure:
> <<combined,eval=FALSE>>=
> <<chunk1>>
> <<chunk2>>
> @
> 
> <<justDoIt,echo=FALSE>>=
> <<combined>>
> @
> 
> ---------------
> 
> I'd like to be able to do something like this, where the "combined" 
> chunk prints out in the final LaTeX document essentially verbatim.  In 
> particular, I want to see the "<<chunk1>>" unexpanded in that block, 
> since this gives me a nice conceptual overview of the algorithm. (Of 
> courser, this is more useful when chunk1 and chunk2 are much longer than 
> they are in this example....)
> 
> Is there an option that allows me to get this behavior?

As others have said, the answer is currently no, but in R 2.5.0 this 
should be a relatively easy modification (because it has the ability to 
echo your input, rather than a deparsed version of it).  In the other 
platforms you've used, is there a standard syntax to indicate whether or 
not you want the chunks expanded?  I can see either behaviour as being 
desirable in different circumstances.  Sometimes you want the reader to 
know about your chunk names, and sometimes you don't.

Duncan Murdoch



More information about the R-help mailing list