2015年12月30日水曜日

CentOSへrJavaのインストール

CentOSにRがインストールできたので(http://mizunolab.sist.ac.jp/2015/12/centosr.html)、次はrJavaをインストールする。
rootで作業します。

1.R起動
# R

2.rJavaのインストール
> install.packages('rJava')
Installing package into ‘/usr/lib64/R/library’
‘/usr/lib64/R/library’にインストールされるらしい。

ミラーサイトでJapanを選択

インストールが始まり、1分位かかった。
rootでの作業を終了します。

> q()

利用するユーザに変わります。
# su - ユーザ名

JRI.jarファイルのありかを探す
~]$ ls -l /usr/lib64/R/library/rJava/jri/
とするとありました。

クラスパスの設定をします。R_HOMEの追加もしておきます。
 $ vi .bashrc
export CLASSPATH=/usr/lib64/R/library/rJava/jri/JRI.jar:$CLASSPATH
export R_HOME=/usr/lib64/R




$ source .bashrc

 ソースを書いてみます。
$ vi RSample.java

import org.rosuda.JRI.REXP;
import org.rosuda.JRI.Rengine;

public class RSample {
        public static void main(String[] args) {
                Rengine engine = new Rengine(new String[]{"--no-save"}, false, null);
                engine.assign("a", new int[]{36});
                REXP result = engine.eval("sqrt(a)");
                System.out.println(result.asDouble());
                engine.end();
        }
}



コンパイル
$ javac RSample.java


実行
$ java -Djava.library.path=/usr/lib64/R/library/rJava/jri/ RSample
プロパティを指定して実行します。

ちなみにプロパティを指定しないと、下記になります。

 またR_HOMEが設定されてないと、下記になります。

参考
http://qiita.com/Kentrow@github/items/cdc17f1c65f99a01396f
http://binfalse.de/2011/02/20/talking-r-through-java/

0 件のコメント:

コメントを投稿