프로젝트와 스크립트 관리
분석 파일이 여러 폴더에 흩어져 있으면 나중에 찾기도 어렵고, 경로 오류도 자주 발생합니다. RStudio의 프로젝트 기능을 사용하면 관련 파일을 한 곳에 모아두고, 작업 디렉토리도 자동으로 맞춰줍니다.
RStudio 프로젝트 만들기
RStudio 프로젝트를 만들면 .Rproj 확장자의 파일이 생성됩니다. 이 파일을 더블클릭하면 해당 프로젝트가 열리면서 작업 디렉토리가 자동으로 그 폴더로 설정됩니다.
새 프로젝트 만드는 순서는 아래와 같습니다.
- 상단 메뉴에서
File > New Project를 선택합니다. - "New Directory"를 선택합니다.
- "New Project"를 선택합니다.
- Directory name에 프로젝트 이름을 입력합니다. 예를 들어
r-data-analysis처럼 영어로 입력합니다. - "Browse"를 클릭해 프로젝트를 저장할 상위 폴더를 지정합니다.
- "Create Project"를 클릭합니다.
프로젝트가 만들어지면 RStudio 오른쪽 위에 프로젝트 이름이 표시됩니다. 이후 RStudio를 다시 열거나 프로젝트를 전환할 때는 같은 위치의 드롭다운 메뉴를 사용합니다.
작업 디렉토리 확인하기
R에서 파일을 읽고 쓸 때는 작업 디렉토리(working directory)를 기준으로 경로를 탐색합니다. 현재 작업 디렉토리는 getwd() 함수로 확인합니다.
getwd()
[1] "/Users/username/Documents/r-data-analysis"
작업 디렉토리를 직접 바꾸고 싶을 때는 setwd() 함수를 사용합니다.
setwd("/Users/username/Documents/r-data-analysis")
다만 프로젝트를 사용하면 setwd()를 직접 호출할 일이 거의 없습니다. 프로젝트를 열 때 자동으로 해당 폴더로 작업 디렉토리가 설정되기 때문입니다. 스크립트에 setwd()를 하드코딩하면 다른 컴퓨터에서 실행할 때 경로 오류가 발생하기 쉬우므로 가능하면 프로젝트 방식을 사용하는 것이 좋습니다.
폴더 구조 잡기
프로젝트 안에서 파일을 체계적으로 관리하려면 목적별로 폴더를 나누는 것이 좋습니다.
r-data-analysis/
├── r-data-analysis.Rproj
├── data/ ← 원본 데이터 파일 (.csv, .xlsx 등)
├── scripts/ ← R 스크립트 파일 (.R)
├── output/ ← 분석 결과, 그래프 저장
└── docs/ ← 보고서, 메모
이 구조를 코드로 한 번에 만들 수 있습니다.
dir.create("data")
dir.create("scripts")
dir.create("output")
dir.create("docs")
스크립트 파일 관리
하나의 분석 과정을 여러 스크립트로 나누면 관리하기 편합니다. 파일 이름 앞에 번호를 붙이면 실행 순서를 한눈에 파악할 수 있습니다.
scripts/
├── 01_data_load.R ← 데이터 불러오기
├── 02_clean.R ← 데이터 정제
├── 03_analysis.R ← 분석
└── 04_visualization.R ← 시각화
스크립트 파일을 새로 만들 때는 File > New File > R Script를 선택하거나 Ctrl+Shift+N(macOS: Cmd+Shift+N) 단축키를 사용합니다.
스크립트 실행 방법
| 동작 | 단축키 (Windows) | 단축키 (macOS) |
|---|---|---|
| 현재 줄 실행 | Ctrl+Enter |
Cmd+Enter |
| 전체 스크립트 실행 | Ctrl+Shift+Enter |
Cmd+Shift+Enter |
| 파일 저장 | Ctrl+S |
Cmd+S |
| 새 스크립트 열기 | Ctrl+Shift+N |
Cmd+Shift+N |
주석 작성하기
R에서 주석은 # 기호로 시작합니다. 주석은 코드 실행에 영향을 주지 않으며, 나중에 코드를 다시 볼 때 맥락을 이해하는 데 도움을 줍니다.
# 데이터 불러오기
data <- read.csv("data/sales.csv")
# 결측치 제거 후 평균 계산
mean(data$amount, na.rm = TRUE) # na.rm = TRUE: 결측치 제외
여러 줄을 한 번에 주석 처리하려면 코드를 선택한 뒤 Ctrl+Shift+C(macOS: Cmd+Shift+C)를 누릅니다.