2015-05-07 4 views
8

Auf Win7 habe ich sowohl 32 Bit und 64 Bit R installiert. Da man nicht auf 32-Bit-MS Access von 64-Bit-R ODBC kann, möchte ich einen R-Skript beziehe die 32-Bit-Version von R. mit Von this SO question Ich verstehe, dass ich 32-Bit-R starten kann system() mitQuelle R-Skript mit 32 Bit R von 64 Bit RStudio

system(paste0(Sys.getenv("R_HOME"), "/bin/i386/R.exe"), wait = FALSE, invisible = FALSE) 
mit

Dies startet R in einem Terminal. Ist es auch möglich, ein R-Skript von einem system() Aufruf zu beziehen?

Ich fragte mich, ob R CMD BATCH eine Möglichkeit sein würde, aber ich kann nicht einen Weg legen Sie es auf 32-Bit R.

Antwort

8

Ich glaube, Sie wollen Rscript.exe verwenden ausführen, um die Datei, anstatt R.exe sehen . Sie können dies tun, indem Sie einfach /bin/i386/Rscript.exe your_rfile.R verwenden - so würde ich R-Code von der Befehlszeile in Windows ausführen.

+1

Als Addendum zu diesem, ist es möglicherweise erwähnenswert, dass, wenn der Dateipfad von 'your_rfile.R' ein Leerzeichen enthält, dann Shell-Quoting benötigt wird. Folgendes sollte funktionieren: 'system (paste0 (Sys.getenv (" R_HOME ")," /bin/i386/R.exe ", sqQuote (" C: \\ Pfad zu \\ Datei.R ")), warte = FALSE, invisible = FALSE) ' –

+1

@ r.bot außer' Rscript.exe' anstelle von 'R.exe' und' shQuote' anstatt 'sqQuote' –

Verwandte Themen