2013-07-01

RServeでJavaからRを呼び出す

RServeを利用してJavaからRを呼び出すサンプルです。

(1)ライブラリのダウンロードとクラスパス追加
http://www.rforge.net/Rserve/files/ から、
  • REngine.jar
  • RserveEngine.jar
の両方をダウンロードして、クラスパスに追加して下さい。

(2)サンプルコード
下記、サンプルではリモートマシンにあるRを呼び出していますが、ローカルの場合はアドレス指定なしでOKです。

REXP x ;
RConnection c;
try {
c = new RConnection("192.168.XX.XX");
//直接コマンドで代入
c.eval("x<-10");
//代入はこの書き方がたぶん正解
int xx=10;
c.assign("x",xx);
x = c.eval("x/2");
System.out.println(x.asString());
}catch (RserveException e) {
e.printStackTrace();
} catch (REXPMismatchException e) {
e.printStackTrace();
}


0 件のコメント:

コメントを投稿