2015-05-07 4 views
8

Su Win7 ho installato sia 32 bit che 64 bit R. Perché non si può ODBC a 32 bit di Microsoft Access da 64 bit R, voglio fonte uno script R utilizzando la versione a 32 bit di R. Da this SO question ho capito che posso lanciare 32 R bit usando system() conScript sorgente R con 32 bit R da 64 bit RStudio

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

Questo avvia R in un terminale. È anche possibile generare uno script R da una chiamata system()?

Mi chiedevo se R CMD LOTTO sarebbe una possibilità, ma non riesco a vedere un modo per impostare a 32 bit R.

risposta

8

Penso che si desidera utilizzare Rscript.exe per eseguire il file, piuttosto che R.exe . Puoi farlo usando solo /bin/i386/Rscript.exe your_rfile.R - questo è come eseguirò il codice R dalla riga di comando in Windows.

+1

Come addendum a questo, è forse interessante notare che se il percorso del file 'your_rfile.R' ha uno spazio al suo interno, allora avrà bisogno di quotatura della shell. Il seguente dovrebbe funzionare: 'system (paste0 (Sys.getenv (" R_HOME ")," /bin/i386/R.exe ", sqQuote (" C: \\ percorso a \\ file.R ")), attendere = FALSE, invisible = FALSE) ' –

+1

@ r.bot eccetto' Rscript.exe' invece di 'R.exe' e' shQuote' piuttosto che 'sqQuote' –