명령라인 인터페이스에서 R 스크립트를 실행하고, 다양한 R 스크립트 실행방법을 실습해보자.

1 R 스크립트 실행환경 1 2 3 4

R 스크핍트 실행

유닉스/리눅스 운영체제가 준비되었다면 R스크립트 실행환경을 준비한다.

1.1 R설치

R을 스크립트 형태(.R) 파일로 실행할 경우 가장 먼저 r-base-core를 설치한다. 그래픽 사용자 인터페이스가 없는 형태의 R이 설치되며 R 스크립트 실행에 필요한 연관된 프로그램도 더불어 설치한다.

1.2 R 스크립트 실행환경

R과 스크립트를 실행할 Rscript 실행프로그램이 위치한 디렉토리를 확인한다. 여기에 사용되는 명령어는 which다. which R 명령어를 통해 R 실행파일이 /usr/bin/ 디렉토리에 위치한 것을 확인할 수 있다.

which Rscript 명령어를 통해 Rcript 실행파일도 /usr/bin/ 디렉토리에 위치한 것을 확인할 수 있다.

echo $PATH 명령어를 통해 /usr/bin, 경우에 따라서는 /usr/local/bin 디렉토리에 R과 Rscript 실행파일이 존재하는 것을 확인한다.

1.3 R 스크립트 파일 실행

.R 스크립트 파일을 명령라인 인터페이스로 실행하는 방법은 다양한다. 먼저 hello_world.R 스크립트 파일을 생성한다.

쉬뱅(shebang, #!) 다음에 스크립트를 실행할 프로그램을 지정한다. Rscript로 지정하여 R스크립트를 실행하는데 사용한다.

#! /usr/bin/env Rscript

chmod +x 명령어를 통해서 일반 텍스트 파일을 실행가능한 파일 형식으로 지정한다. hello_world.R 파일이 실행가능한 형태가 되었기 때문에 ./hello_world.R 명령어로 R스크립트를 실행시킨다.

1.4 기타 R 스크립트파일 실행 방법

R스크립트를 실행하는 방법은 다양하다.

Rscript 명령어로 실행을 시켜도 동일한 산출 결과가 출력된다.

R CMD BATCH 명령어로 실행시키면 실행결과가 hello_world_output.txt 파일에 저장된다. hello_world_output.txt 파일명을 지정하지 않으면 hello_world.Rout 파일에 저장된다.

R --no-save << 사용법도 가능하다.

2 실습 예제 5

2.1 R스크립트 작성

Rscript r_session_info.R 명령어를 실행해서 실제로 RStudio나 R 콘솔을 열지 않고도 R 세션정보를 명령라인 인터페이스에서 처리하는 R 스크립트를 작성한다.

텍스트 편집기를 열고, sessionInfo()를 적고 파일명을 r_session_info.R로 저장한다.

배쉬쉘에서 R스크립트를 실행해서 R 세션정보를 받아확인한다.

2.2 R스크립트 출력결과 파일로 저장

> 파이프 연산자를 사용해서 R 스크립트 출력결과를 텍스트 파일로 저장한다.

또다른 방법은 R 스크립트 내부에서 출력결과를 파일에 저장하고 프로그램을 종료하는 방법도 있다.

caputre.output 함수를 cat과 함께 사용하는데, 한글도 적용이 가능하도록, encoding="UTF-8"도 추가한다.

Rscript r_session_info.R 명령어를 실행시키면 다음과 같이 실행결과가 텍스트 파일 r_session_info_rscript.txt로 떨어진다.