알스튜디오
알스튜디오(RStudio)는 통계 계산과 그래픽을 위한 프로그래밍 언어인 R(알)을 좀 더 편리하게 사용할 수 있도록 도와주는 통합 도구 프로그램이다. 2009년 미국의 조셉 알레어(Joseph J. Allaire)가 창시했다.
개요
알스튜디오(RStudio)는 R을 처음 배우는 사람이 사용하는 통합개발환경이다. 다른 통합개발환경에 비해 R 언어에 특화된 사용자 인터페이스와 기능을 가지고 있으며, ggplot2, shiny, dplyr, httr 등 다양한 패키지를 왕성하게 만들고 있는 알스튜디오 팀이 직접 관리를 하기 때문에 문서도 많고, 국내 사용자 층도 큰 편이다. 특히 초보자부터 고급 사용자까지 필요한 많은 기능들을 그래픽 사용자 인터페이스로 제공함으로써 배울수록 편리함이 늘어난다.[1]
기능
- 화면 구성
알스튜디오는 보통 [소스], [콘솔], [워크스페이스], [히스토리, 파일], [파일, 플롯, 패키지, 도움말] 등 네 개의 화면으로 구성된다. (화면의 구성은 옵션 설정에 따라 달리 구성할 수 있다.)
- 소스
- 소스는 프로그램을 작성하는 에디터이다. 여기에서 R 프로그램 스크립트를 작성할 수 있으며, 데이터 프레임과 같은 데이터를 보여 주기도 한다.
- 콘솔
- R의 명령어를 입력하여 결과를 바로 볼 수 있는 공간이다. 간단한 연산 결과를 알고 싶거나 함수를 사용하는 경우에 유용하다. 또한, R 스크립트의 실행 결과를 출력하는 장소이기도 하다.
- 워크스페이스, 히스토리, VCS
- 워크스토리, 히스토리, VCS는 R 스크립트에서 사용하는 변수와 값, 그리고 스크립트에 있는 함수 목록을 보여주는 워크스페이스 탭, 콘솔 화면에서 입력했던 명령어 내역 등을 보관하는 히스토리 탭 등으로 구성된다.[2]
- 콘솔에서 작업하기
- 코드 자동 완성
- 탭 키를 사용하여 코드를 자동완성하는 기능을 제공한다. 가령 R 개체나 함수이름의 일부를 입력해 두고 탭 키를 입력하면 알스튜디오는 자동으로 그 이름으로 시작하는 개체나 함수 이름을 제시한다. 예를 들어, sub만 입력해 두고 탭을 입력하면 subset, subset.data.frame, subset.default 등을 제시한다. 함수를 사용하는 경우 자주 사용하지 않거나 새로 익히는 경우라면 함수에 전달할 인수가 기억나지 않을 수 있다. 이 경우 함수 이름과 괄호까지만 입력해 두고 탭 키를 입력하면 함수 사용에 필요한 인수에 대한 정보를 얻을 수 있다. R의 기본 개발환경인 RGui와 마찬가지로 상하 방향키를 사용하여 이전에 사용한 명령을 불러올 수 있으며, Ctrl+UP 단축키를 사용하면 이전 명령을 보여주는 팝업 메뉴를 볼 수 있다. Ctrl+UP 단축키는 이전 명령과 유사한 명령목록을 보여 주기도 한다. 콘솔 화면의 제목표시줄에는 몇 가지 기능을 가지고 있다. 우선 콘솔이라는 표시 뒤 회색 글씨는 작업하고 있는 작업 폴더를 가리킨다. 또한, STOP 버튼은 현재 실행중인 R 스크립트를 강제로 중단하는 역할을 한다. 그외 나머지 두 개의 버튼은 콘솔 화면의 크기를 늘리거나 줄이는 역할을 한다.[2]
- 편집 및 코드 실행하기
- 파일
- 알스튜디오의 에디터는 구문강조, 코드완성, 여러 파일 편집, 찾기/바꾸기 등 작업의 효율성을 높여 주는 여러 기능을 가지고 있다. 이러한 기능은 R 소스코드 외에 Sweave 파일, TeX 파일에서도 지원한다. 저장해 둔 파일을 여는 경우 [File]-[Open File]을 클릭한다. 또는 최근에 열어 본 목록 중 파일을 선택한다면 [File]-[Recent Files]를 이용할 수 있다. 알스튜디오는 동시에 여러 개의 파일을 열어 편집할 수 있는데, 에디터 상단의 탭을 이용하여 파일과 파일 사이를 이동하여 작업할 수 있다. 파일을 많이 열어 둔 경우, 에디터 상단 오른쪽 끝의 '>>' 아이콘을 이용하여 원하는 파일로 이동할 수 있다. 또는 [View]-[Switch to Tab]을 사용해도 된다.
- 코드 완성
- 알스튜디오는 탭 키를 이용하여 작성 중인 코드를 자동으로 완성하는 기능을 제공한다. 예를 들어, 'sub'라고 입력하고, 탭 키를 누르면 'sub'로 시작하는 개체나 함수를 보여 준다. 코드완성기능은 에이터 외에 콘솔창에서도 사용 가능하다.
- 찾기/바꾸기
- 알스튜디오는 소스 파일 내에서 찾기/바꾸기를 제공한다. 단축기 [Ctrl]+[F] 또는 [Edit]-[Find and Replace]를 사용하면 된다.
- 주석달기/해제
- 프로그램에 대한 설명을 적거나 원하는 코드를 주석 처리하여 실행을 임시로 막는 경우 주석달기/해제 기능을 이용할 수 있다. 주석을 달거나 해제하려면 [Edit]-[Comment/Uncomment Lines] 또는 단축기 [Ctrl]+[/]를 이용한다.
- 들여쓰기
- 알스튜디오는 코드를 붙여 넣거나 코드 블럭의 시작을 알리는 {에서 [Enter]를 눌러 줄을 바꾸는 경우 자동으로 들여쓰기를 해 준다. [Edit]-[Reindent Lines] 또는 단축키
- 소스 온 세이브(Source On Save)
- 함수를 재사용하려는 경우 에디터의 도구모음에 위치한 [Source On Save]를 체크해 둔다. 이렇게 체크해 두면 함수를 수정하여 저장할 때마다 전역환경(Global Environment)에 보관된다. 이렇게 전역환경에 저장된 함수는 따로 함수가 담긴 파일을 열지 않아도 다른 파일에서 사용할 수 있다. 물론 함수 외에 변수도 이런 식으로 사용할 수 있다.[2]
- 코드 편집하기
알스튜디오는 R의 소스코드를 찾거나 이동하기 위한 편리한 기능을 제공하고 있다.
- 파일/함수 이동(Go to File/Function)
- 편집하려는 소스파일이나 함수의 이름을 알고 있다면 알스튜디오 도구모음의 [Go to File/Function]를 이용하여 재빨리 이동할 수 있다. 단축키는 [Ctrl]+[.]이다.
- 함수 정의 이동
- 알스튜디오는 함수의 정의를 이동할 수 있다. 함수 이름에 커서를 위치시키고, 편집기의 도구모음에서 [Code Tools]-[Go to Function Definition]를 클릭하면 함수를 정의한 곳으로 이동할 수 있다. 단축키는 [F2]이다. 또 다른 방법은 함수 이름에 커서를 위치시키고, [Ctrl]키를 누른 상태에서 마우스 왼쪽 버튼을 클릭해도 된다.
- 소스 파일 내에서 이동하기
- 소스 파일 내에서 이동하는 방법에도 앞서 말한 기능 외에 몇 가지 방법이 더 있다. [Ctrl]+[G]를 누르면 원하는 행 번호로 이동할 수 있다. 또, 편집기 왼쪽 하단의 [f] 모양의 버튼을 클릭하면 함수 목록이 팝업 창에 표시되고 이 중 하나를 클릭하면 해당 함수로 이동한다.[2]
- 프로젝트 사용하기
알스튜디오의 프로젝트는 하나의 작업을 여러 개로 분리하여 각각 워킹 디렉토리, 워크 스페이스, 명령어 기록, 소스문서로 관리하는 편리한 기능이다.
- 프로젝트 만들기
- 알스튜디오의 프로젝트는 R의 워킹 디렉토리를 관리한다. '새로운 폴더, R코드와 데이터가 있는 폴더, 버전관리저장소 복제' 세 가지 방법으로 프로젝트를 만들 수 있다. 새로운 프로젝트를 만들려면 메뉴에서 [Project]-[New Project]를 클릭하거나 오른쪽 상단의 [Project]를 클릭한다. 새로운 프로젝트가 만들어지면, 프로젝트 디렉토리 내 프로젝트 파일(*.Rproj)이 만들어진다. 이 파일은 여러 가지 프로젝트 옵션 정보를 가지고 있다. 프로젝트 고유의 임시파일이 생기는 경우 Rproj.user라는 폴더가 생성된다(기본적으로 숨겨져 있다).
- 프로젝트 열기
- 프로젝트를 열려면 메뉴에서 [Project]-[Open Project] 또는 [Project]-[Recent Projects]를 클릭하거나 도구모음의 [Project]를 클릭한다. 프로젝트 파일이 열리면 새로운 R 세션이 시작되고 프로젝트 폴더 내 .Rprofile 파일이 소스화되고 .RData 파일이 로딩된다. 또한 .Rhistory 파일이 알스튜디오의 히스토리 창에 로드된다. 또한 작업 디렉토리는 프로젝트 폴더가 된다. 또한, 이전에 저장한 프로젝트의 소스파일이 열리게 된다.[2]
- 커맨드 히스토리 사용하기
알스튜디오는 콘솔에 입력한 모든 명령을 데이터베이스에 저장한다. 이 데이터베이스는 [History] 창에서 찾아 볼 수 있다.
- 명령 내역 살펴보기
- 알스튜디오 콘솔에 입력한 명령은 [History] 탭에서 살펴 볼 수 있다. 명령은 순차적으로 표시되며 일정 시간 단위로 묶어 표시된다.
- 명령 내역 검색
- [History] 탭의 오른쪽 상단에 위치한 검색 상자를 사용하여 이전에 사용한 명령을 검색할 수 있다.
- 명령 재활용하기
- [History] 창에서 선택한 명령은 두 가지 방법으로 사용할 수 있다.[2]
- 작업 디렉토리와 워크 스페이스
R과 함께 설치되는 R 그래픽 사용자 인터페이스처럼 알스튜디오는 사용자의 홈 디렉토리를 글로벌 워킹 디렉토리로 사용한다. 알스튜디오가 시작될 때 기본 작업 디렉토리에서 .Rprofile을 실행하거나, 기본 작업 디렉토리에서 .RData 파일을 읽어서 워크 스페이스로 로드하는 두 가지 일이 벌어진다. 알 스튜디오가 종료될 때 워크 스페이스의 변경사항이 있다면, 변경사항을 현재 작업 디렉토리의 .RData 파일에 저장할지 여부를 묻게 된다. 그러나 이러한 사항은 '기본 작업 디렉토리 변경', '시작 시 기본 작업 디렉토리의 .RData 로딩 여부', '.RData를 항상 저장할지, 저장하지 않을지, 종료 시 저장여부 묻기' 등을 정할 수 있다.
- 작업 디렉토리 변경
- 현재의 작업 디렉토리는 알스튜디오의 콘솔 제목 표시줄에 표시된다. 현재의 작업 디렉토리를 변경하는 방법은 'setwd' R 함수를 사용하거나, 메인 메뉴에서 [Tools]-[Change Working Directory]를 사용하거나, [Files] 작업창의 도구모음에서 [More]-[Set As Working Directory]를 사용한다. 작업 디렉토리를 변경하는 경우 코드에서 상대적인 파일 참조를 해둔 경우 실행 시 파일을 참조하지 못하는 경우가 생기거나, 종료 시 .RData의 저장 위치가 새로운 디렉토리로 변경되는 경우가 생긴다.
- 워크 스페이스 로드와 저장
- R을 사용하는 동안 워크 스페이스를 불러오거나 저장하고 싶다면 >save.image(), >load(".RData") 두 가지의 명령을 사용하여 현재의 작업 디렉토리에 .RData 파일로 저장하거나 읽어 올 수 있다. load 함수는 현재 워크 스페이스 내 개체를 완전히 바꾸는 게 아니라 덧붙이거나 겹쳐 쓴다. 따라서, 워크 스페이스 내 현재 모든 개체를 정리하고 로드하고 싶다면 rm 함수를 사용하여 >rm(list=ls())로 정리할 수 있다. R의 시작과 종료 시 워크 스페이스 로딩과 저장이 이루어지기 때문에 대부분의 경우 해당 명령은 필요하지 않다. 그러나 작업 디렉토리를 변경하는 경우, 변경할 디렉토리 내 워크 스페이스와의 동기화를 위해 필요할 수 있다. [2]
- 입맛에 맞게 알스튜디오 조정하기
알스튜디오 옵션을 변경하려면 메인메뉴 [Tools]-[Options]를 사용한다. 여기에는 '일반 R 옵션(General R Options)', '소스 코드 편집(Source Code Editing)', '모양 및 테마(Appearance and Themes)', 화면 구성(Pane Layout)', '버전 관리(Version Control)' 다섯 가지의 선택 사항이 있다.[2]
각주
참고자료
- mrchypark, 〈실무 빅데이터 분석을 위한 SQL과 R의 활용 CAMP〉, 《깃허브》
- GNU R 프로그래밍, 〈1.RStudio개발환경〉
같이 보기
이 문서는 로고 수정이 필요합니다.