[R] Sweave : change value in rnw file to generate multiple "single" reports ?

Duncan Murdoch murdoch at stats.uwo.ca
Mon Dec 10 17:56:05 CET 2007


On 12/10/2007 11:25 AM, Ptit_Bleu wrote:
> Hello,
> 
> I'm still trying to make the life of my colleagues easier. Nice, isn't it ?
> At the moment, I'm looking for a way to generate multiple "single report".
> In fact I have a .rnw file which send a query to a MySQL database
> (rs<-dbSendQuery(con, statement="select * from treatdata where
> name='Device1'")
> 
> But of course my colleagues have many devices and don't want to enter the
> rnw file to change the name of the device.
> 
> Is there a way to pass arguments to Sweave like Sweave("myfile.rnw",
> namevar="Device2") and it will change namevar by Device2 into the file
> myfile.rnw before creating the .tex file ?

Not as far as I know, but you could wrap Sweave() in another function 
that uses save() to write a file of variables, and start your .Rnw file 
with load("file.Rdata").

> Or is it possible to do it via another language, that is: loading the rnw
> file, modifying it, saving it and finally calling Sweave ?

Surely yes, there are lots of ways to automatically edit a text file.

Duncan Murdoch

> 
> Whatever the solution, I need you help. In advance thank you.
> Ptit Bleu.



More information about the R-help mailing list