본문 바로가기
R

[R] R & JAVA 연동 자바에서 Rserve 실행

by 졸린이 2021. 11. 17.
반응형

R의 Rserve를 이용해서 연동을 해본다.

 

R에서 Rserve 서비스를 올려놓고 자바에서는 Rserve 라이브러리로 Rserve와 연결을 해서 통신을 하는 그런식 같다.

 

먼저 Rstudio나 Rgui를 실행시킨다.

 

> install.packages("Rserve")

를 입력하고 Korea를 선택한다. -> OK 버튼 클릭

그러면 열심히 설치한다.

그리고 Java에서 R을 사용하려면 Rserve를 실행시켜야 한다.

> library(Rserve)

> Rserve(FALSE, port = 6311, args= '--RS-encoding utf8 --no-save --slave --encoding utf8 --internet2')
> Rserve(args = "--RS- encoding utf8")

 

위 세 명령어를 차례대로 입력한다. 그리고 Eclipse로 간다.

프로젝트를 아무거나 생성하고 상단에

 

Project -> Properties를 클릭.

1. Java Build Path -> 2. Libraries -> 3. Add External JARs... 

 

4. R 설치된 경로에 library 폴더안에 보면 방금 설치한 Rserve 폴더가 추가 되어 있다. 그리고 java 폴더 가면 

REngine.jar, Rserve.jar

jar파일이 두개 있는데 그 두 개를 불러온다.

Apply 시키고 이제 테스트 할 Class를 하나 생성한다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import org.rosuda.REngine.REXP;
import org.rosuda.REngine.Rserve.RConnection;
 
public class Test {
    public static void main(String[] args) {
        RConnection conn = null;
        try {
            conn = new RConnection();
            REXP exp = conn.eval("R.version.string");
            
            System.out.println(exp.asString());
 
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if (conn != null) {
                conn.close();
            }
        }
    }
}
cs

이대로 실행시켜 보면

Rgui에서 실행시킬때와 같이 출력된다.

 

반응형

'R' 카테고리의 다른 글

[R] R Install ~ R 설치  (0) 2021.11.15

댓글