Triad sou.

Rscriptとバッチファイル

Rでもバッチ実行ディレクトリにファイルを保存したかったので調べてみた。
Rscriptを使うと出来るようだ。

Rscript [--options] [-e expr] inputfile [args]

のように、argsを引数として渡すことができる。

Rscript -e "commandArgs(); proc.time()" arg1 arg2 arg3

を実行してみるとよく分かる。


バッチファイルをこんな感じで書いた。
[--verbose]は進捗を出力するオプション。

:: R.bat
for %%i in ("*.R") do  (
  Rscript --verbose %%i %~dp0
)
::PAUSE


R側では

path <- commandArgs()[6]

でバッチファイルを実行したディレクトリを引けた。
やっぱ引数チェックをちゃんとやった方が良いのかなぁ。