재현가능한 과학적 분석을 위한 중급 R
R 마크다운
학습 목표
- R 내장코드와 그림을 갖는 HTML 페이지, 워드 문서, PDF 문서를 생성한다.
RStudio를 사용해서 텍스트와 R 코드를 갖춘 문서를 생성할 수 있다. 시도해 보자!
RStudio에서 “File” 메뉴로 가서, “New File”을 선택하고 나서, “R Markdown…”을 선택한다. 그리고 나면 다음 윈도우가 팝업되어 나타난다:
“HTML”, “PDF”, “Word” 선택옵션을 선택해서 최종적으로 생성할 문서 유형을 변경한다.
우선 “HTML”을 선택한다.
다음과 같은 화면이 RStudio 소스코드 편집창에 신규 파일이 열린다:
R 마크다운 문서는 세가지 유형 콘텐츠로 구성된다. R 코드는 백틱(```)으로 감싸서 작성된다. 페이지 상단 YAML(야믈) 헤더는 문서 제목, 저자, 저작날짜 같은 문서정보가 담겨진다. 마지막으로 일반 텍스트가 들어간다. 세가지를 구성요소를 통해 최종 문서 산출 방식을 제어한다. 테스트해 보자!
소프 편집기 상단에 “Knit HTML” 라벨을 갖는 실뭉치가 보일 것이다. 눌러보자!
R 콘솔창에서 코드가 실행되고 나서 새로운 윈도우가 열린다:
HTML 문서를 살펴보면, 문서 헤더정보가 큰제목으로 변환된 것을 볼 수 있다. 첫 코드 블록도 보이고 R에서 실행될 때 생성되는 출력결과도 볼 수 있다! 두번째 코드 블록은 숨겨졌지만, 그래프를 도식화해서 문서에 내장했다.
“마크다운”으로 불리는 경량 구문을 사용해서 일반 텍스트를 렌더링해서 출력한다. 마크다운은 일반 텍스트에 서식을 적용할 수 있게 한다. 예를 들어, 해당 단어 혹은 문구를 별표 두개로 감싸면 예를 들어 **굵은 글씨** 하면 최종문서에 굵은 글씨로 표현된다!
RStudio에서 간편한 컨닝쪽지를 제공한다. 여기에는 서식 구문 뿐만 아니라 R코드가 코드 덩어리 내부에서 실행되는 방식을 변경하는 선택옵션도 제공한다.
도전과제 1
굵은 글씨, 기울인 글씨, 밑줄 강조 서식을 포함하는 문장을 작성한다.
도전과제 2
일반 텍스트 문단에서 소프트웨어 카펜트리 웹사이트로 링크를 거는 문장을 작성한다. (http://software-carpentry.org/)
도전과제 3
두번째 코드 블록에서 생성된 그래프 크기를 폭 3 cm, 높이 5 cm로 변경한다. (힌트: 코드 블록 상단에 {r}
옵션을 추가한다!)
도전과제 4
gapminder
데이터를 불러 읽어오는 새로운 코드 블록을 추가한다. 그리고, 1977년 각 대륙별로 전체 GDP를 계산해서 출력한다.