[R] Surface for R outside of R
Francisco J. Zagmutt
gerifalte28 at hotmail.com
Mon May 4 20:43:42 CEST 2009
I just completed a Windows application using the batch approach and it
works very well. In our case, we used VBA for Excel to call different
batch files that execute R code, but you can do the same from any
platform. Here is a simple step-by-step example on how to make the
batch files work (in Windows):
1. Write your R code and save it the directory where you want your
results. Here is a very simple example using a file called "normal.r".
This code takes 100 random samples from a standard normal and writes the
results to a file called "data.txt"
q(save="no", runLast = F)
2. Make sure that the console finds the path to R without changing your
path environment variable. The easiest way to do this is to download
the batchfiles that Gabor Grothendieck has kindly provided in this site
http://code.google.com/p/batchfiles/ and put one or all of the files in
the same directory where your batch and R files will reside. The only
file I have needed so far in different WinXP and Vista machines was
"Rcmd.bat" but you may need to use others.
3. Open a text editor and create a file with a .bat or .cmd extension.
Here is an example of a file called "TestBatch.CMD" that runs the code
title Random number generation
ECHO Taking 100 random samples from a N(0,1)
Rcmd BATCH --slave normal.r Log.txt
ECHO Analysis done. See the file data.txt for results
PING 188.8.131.52 -n 1 -w 1000 >NUL
The main line here is "Rcmd BATCH --slave normal.r Log.txt" which tells
the console to run your R code, and to write outputs printed in the
console (i.e. errors) to the Log.txt file. The PING argument adds a
short lag before the console closes, so the user can see what is echoed
in the console. The other lines should be pretty self-explanatory.
4. Execute the "TestBatch.CMD" file (by hand or via your GUI) and watch
the results. You should now see two new files ("data.txt" and
"Log.txt") in the same directory as the batch file.
I hope this helps. Let me know if you have any other questions.
Francisco J. Zagmutt
2891 20th Street
Boulder, CO, 80304
Hans-Peter Suter wrote:
>> want an analysis. The best case were a surface of e.g. 8 Buttons, each click
>> leads to start a specific R file. My outputs are JPEG or CSV, so I don`t
>> need the output inside of R. Could anyone can give me some recommendations,
>> what could be a solution (e. g. Java)? Is such a solution possible?
> What about batch scripts which would be called by your GUI? (maybe
> you could even skip the gui...)
> (see ?Rscript (unix alike) or Windows FAQ, 2.12)
More information about the R-help