해당 포스트는 Hadley Wickham이 작성한 'The tidyverse style guide' 를 번역하여 정리한 글입니다.
Lists
Intro - 0. Welcome
Analysis - 1. Files
Analysis - 2. Syntax (1)
Analysis - 2. Syntax (2)
Analysis - 3. Functions
Analysis - 4. Pipes
Analysis - 5. ggplot2
Packages - 6. Files
Packages - 7. Documentation
Packages - 8. Tests
Packages - 9. Error messages
Packages - 10. News
Packages - 11. Git/GitHub
1. 파일(Files)
1.1 이름(Names)
파일 이름은 의미를 나타내야하며 마지막은 .R
로 끝나야 합니다. 파일 이름에 특수 문자 사용은 피하고 숫자, 문자, -
, _
들을 붙여서 사용하시는 것이 좋습니다.
# Good
fit_models.R
utility_function.R
# Bad
fit models.R
foo.r
stuff.r
특정 순서로 파일을 실행해야하는 경우, 파일 이름 앞부분에 번호를 넣는 것이 좋습니다. 만약 파일의 개수가 10개를 넘는다면 한자리 숫자의 경우 왼쪽에 0을 채워 넣는 것이 좋습니다.
00_download.R
01_explore.R
...
09_model.R
10_visualize.R
만약 놓치고 지나간 단계가 있다는 것을 뒤늦게 알게 된다면, 02a
, 02b
처럼 수정하고 싶을 수 있습니다. 그러나 저는
힘들더라도 모든 파일 이름을 수정하는 것이 더 낫다
고 생각합니다.
대소문자를 구분하지 않는 운영체제(ex, Windows 또는 MAC OSX) 사용자나 공동 작업자들의 경우, 대소문자를 구분하는 시스템에서 문제가 발생될 수 있기에 항상 대문자(Capitalization) 사용에 주의해야 합니다.
모두 소문자인 파일 이름을 선호하며, 대소문자로 구분된 파일 이름은 사용하지 않는 것이 좋습니다.
1.2 구조(Organization)
여러 파일에 걸쳐 코드를 어떻게 구성해야 하는지 정확히 설명하기는 어렵습니다. 제가 생각하는
가장 좋은 방법은 파일에 내용을 떠올릴 수 있는 간결한 이름을 부여하는 것
이며, 그것을 통해 좋은 구조에 도달할 수 있다고 생각합니다. 그러나 그 시점에 도달하는 것은 쉽지 않습니다.
1.3 내부 구조(Internal structure)
-
와 =
의 주석 행을 사용하여 파일을 읽기 쉬운 청크(chunk)로 분할할 수 있습니다.
# Load data ---------------------------
# Plot data ---------------------------
만약 스크립트에서 add-on 패키지를 사용하는 경우, 파일의 맨 처음 부분에서 한 번에 로드하는 것이 좋습니다. 이는 코드 전체에 library()
호출을 분산하거나 .Rprofile
과 같은 시작 파일에 로드되는 숨겨진 종속성을 갖는 것보다 더 깔끔합니다.
add-on 패키지?
패키지는 R에서 제공하는 시스템 패키지가 아닌 dplyr, ggplot2 등과 같은 추가 패키지를 의미합니다.
출처
▲ The tidyverse style gudie 원문 다운받기