- 전체
- Sample DB
- database modeling
- [표준 SQL] Standard SQL
- G-SQL
- 10-Min
- ORACLE
- MS SQLserver
- MySQL
- SQLite
- postgreSQL
- 데이터아키텍처전문가 - 국가공인자격
- 데이터 분석 전문가 [ADP]
- [국가공인] SQL 개발자/전문가
- NoSQL
- hadoop
- hadoop eco system
- big data (빅데이터)
- stat(통계) R 언어
- XML DB & XQuery
- spark
- DataBase Tool
- 데이터분석 & 데이터사이언스
- Engineer Quality Management
- [기계학습] machine learning
- 데이터 수집 및 전처리
- 국가기술자격 빅데이터분석기사
- 암호화폐 (비트코인, cryptocurrency, bitcoin)
stat(통계) R 언어 RMarkdown을 이용한 문서 작성
2016.11.16 11:53
RMarkdown을 이용한 문서 작성
1 Basic
1.1 rmarkdown 소개
markdown문법을 이용하여 R에서 문서를 바로 작성할 수 있다.
rmarkdown의 도움말의 경우 다음의 홈페이지에서 잘 설명되어 있다. http://rmarkdown.rstudio.com
하지만 영어로 설명되어 있기 때문에 한글로 정리하였다.
이 문서의 경우 다음의 환경에서 작성되었다.
* 사용 프로그램
+ Core: R 3.1.3
+ IDE: RStudio 0.98.1103
+ R Package: rmakrdown 0.6.1
+ R Package: xtable 1.7-4
* OS: CentOS7
* Latex: Latex2014
1.2 사용방법
1.2.1 필요 패키지 설치
다음과 같이 패키지를 설치하면 rmarkdown을 이용하여 문서를 편집할 준비를 완료한 것이다.
install.packages(c("rmarkdown","xtable"))
추가로 R에서 latex을 이용한 문서를 편집하고 싶으면 컴퓨터에 Latex이 설치되어 있어야 한다. 이 문서의 경우 Latex 2014와 rmarkdown을 이용하여 PDF문서로 작성하였다. 위에서 설치해야 하는 xtable는 rmarkdown문서를 작성할 때 R객체를 표로 변환하여 주는 패키지이다.
1.2.2 문서 생성 순서
- 순서
- *.Rmd 파일 생성
- 내용 작성
- 컴파일
1.2.3 *.Rmd 파일 만들기
- 방법1: text editor 문서를 이용하여 확장자 .Rmd 파일 생성 ex) 메모장
- 방법2: RStudio의 File>New File>R markdown 선택
1.2.4 문서 만들기
- 방법1: rmarkdown::render(“*.Rmd 파일 경로”) 함수 이용
- 방법2: RStudio에서 작성중인 *.Rmd 파일에서 컴파일키 “Ctrl+Shift+k”
2 문서 만들기
2.1 R code 작성 및 결과 출력
2.1.1 여러줄의 R코드 실행 및 출력
(다음과 같은 표현을 Chunk라 한다.)
*단축키: Crtl + Shift + k
```{r ,옵션}
(Code 작성하는 자리)
```
Chunk에서 자주 사용되는 옵션은 다음과 같다.
2.1.2 간단히 R코드 실행 후 결과 출력
문장의 중간에 R의 결과를 넣고 싶은 경우 사용할 수 있다.
`r (코드 작성) `
2.2 기타 공통 문법
2.2.1 강조 하기(Bold)
강조하는 방법은 2가지가 있다. ‘*’ 혹은 ‘_’를 이용할 수있다.’*‘(혹은’_’ )를 이용하면 이텔릭체와 볼드체를 생성할 수 있다. 다음의 결과는 예시 코드와 그에 따른 결과이다.
2.2.1.1 예시 및 결과
*italic* **bold** _italic_ __bold__
italic bold italic bold
2.2.2 Headers (제목 지정)
- Html형식과 PDF 형식에서는 Latex의 section과 subsection등의 개념
- #의 경우 가장 큰 글씨체로 #가 많아질수록 글씨가 줄어듬
- number_section옵션을 지정할 경우 번호가 추가
- Beamer에서는 header를 지정함으로 페이지 분할
- #의 경우 부제목 페이지 생성
- ##의 경우 하나의 페이지 생성
- ### 부터는 글자 크기에만 영향
2.2.2.1 예시 - 출력 결과는 직접 확인
# 기초통계
## 대표값
## 그림그리기
### 산점도
####plot()함수
#### ggplot()함수
### 막대그래프
# 확률분포
## 이산확률
## 연속확률
2.2.3 목록 만들기
- 다음과 같은 방법으로 목록을 생성 할 수 있다.
- 번호형식의 경우 순서에 맞게 번호가 자동으로 생성
- 주의사항
- item1에 속하는 sub item을 생성은 띄어쓰기 4칸
2.2.3.1 예시 및 결과
* item1
* item2
+ item 2a
+ item 2a
1. item 1
1) item 1-2
1. item 2
1) item2-1
1) item2-2
- item1
- item2
- item 2a
- item 2a
- item 1
- item 1-2
- item 2
- item2-1
- item2-2
2.2.4 링크 만들기
- 인터넷주소를 이용하여 하이퍼링크를 설정할 수 있다.
2.2.5 사진 넣기
- []안의 문자는 캡션으로 들어간다.
- 방법
- 방법1: 인터넷 주소이용
- 방법2: 내부 사진 이용
2.2.5.1 예시 및 결과




2.2.6 공란
- 페이지 분할:
---(혹은***) - 한줄 넘기기:
___(문장뒤 띄어쓰기 3칸)
2.3 html
HTML파일은 홈페이지를 구성하는 파일이다.(홈페이지의 한면을 의미한다) 이 문서에서는 HTML형식을 간단하게 소개하고 보다 자세한 내용은 http://rmarkdown.rstudio.com/pdf_document_format.html 를 참고하라. 이 사이트에는 HTML의 보다 고급수준의 편집을 할수 있는 방법이 소개되어 있다.
2.3.1 기본 형식
*.Rmd 문서의 앞줄에 다음과 같은 형식을 작성하면 html 형식으로 문서를 생성할 수 있다. 여기서 주의할 점은 띄어쓰기이다. “output:_“을 맞추어야 한다.”(띄어쓰기X):(띄어쓰기)"
---
title: "문서의 제목 지정"
output: html_document
---
2.3.2 목차 만들기
목차의 경우 다음과 같은 형식으로 작성을 하면 된다. 여기서 toc는 table_of_contents이며 depth의 경우 목차에 출력되는 깊이(Chapter-Section-subsection-…)를 지정한다. 여기서 2로 지정되었기 때문에 Section 까지만 목차에 출력된다.
---
title: "문서의 제목 지정"
output:
html_document:
toc: true
toc_depth: 2
---
2.3.3 웹페이지 스타일 지정
웹페이지의 디자인 형식을 지정할 수 있다. theme을 지정해서 태마를 바꿀수 있고, highlight를 지정하면 코드의 색 표현 형식을 지정할 수 있다. 보다 자세한 옵션은 다음 홈페이지의 Appearance and Style를 참고하라. http://rmarkdown.rstudio.com/html_document_format.html
---
title: "문서의 제목 지정"
output:
html_document:
theme: united
highlight: tango
---
2.3.4 그림 옵션 지정
그림의 옵션을 지정함으로써 그림의 너비, 높이, 캡션의 유무를 지정할 수 있다.
---
title: "문서의 제목 지정"
output:
html_document:
fig_width: 7
fig_height: 6
fig_caption: true
---
2.4 pdf
2.4.1 기본 형식
*.Rmd파일의 첫 부분에 다음과 같은 형식을 작성하게 되면 pdf로 문서가 출력된다. 앞서 언급한 HTML형식에서 output에 pdf_document만 바뀐 모습이다.
---
title: "문서의 제목 지정"
output: pdf_document
---
2.4.2 목차 만들기
HTML과 동일하다. 추가되는 내용은 number_section: true를 지정함으로써 차후 본문에서 각 section 앞에 번호가 자동으로 붙는다.
ex) 1.서론
1.1 주제
2.본론
2.1 본론1
2.2 본론2
---
title: "문서의 제목 지정"
output:
pdf_document:
toc: true
toc_depth: 2
number_sections: true
---
2.4.3 웹페이지 스타일 지정
웹페이지의 디자인 형식을 지정할 수 있다. theme을 지정해서 태마를 바꿀수 있고, highlight를 지정하면 코드의 색 표현 형식을 지정할 수 있다. 보다 자세한 옵션은 다음 홈페이지의 Appearance and Style를 참고하라. http://rmarkdown.rstudio.com/html_document_format.html
---
title: "문서의 제목 지정"
output:
pdf_document:
theme: united
highlight: tango
---
2.4.4 그림 옵션 및 스타일 지정
그림의 옵션 지정은 HTML문서와 동일하다. 스타일 지정의 경우 theme 옵션은 pdf에서 지원하지 않는다. highlight: 옵션은 동일하게 적용된다.
2.4.5 그외 Latex 옵션 지정
다음의 형식을 보면 대략적인 pdfLatex의 옵션 형식을 알 수 있다. 여기서 주의할 점은 각 옵션의 위치이다. 위치가(속한 곳, 띄어쓰기)가 다를 경우 오류가 출력된다. keep_tex = Latex문서인 .tex 유지 여부 latex_engine = 컴파일할 Latex 컴파일러 지정 includes = 이 옵션에 지정된 *.tex 파일은 각 위치에서 컴파일 된다. 이 옵션을 사용하여 사용하고 싶은 usepackage{}를 지정할 수 있다. template = 사용자 지정 템플릿을 지정할 수 있다.
여기서 주의할 점은 각 .Rmd 파일 위치에 각 .tex 파일이 위치해 있어야 된다.
---
title: "latex이용 pdf 형식 출력"
output:
pdf_document:
latex_engine: pdflatex
keep_tex: true
includes:
in_header: 처음_컴파일될_텍파일.tex
before_body: 본문전에컴_파일될_텍파일.tex
after_body: 본문마지막에_컴파일될_텍파일.tex
template: 내가만든템플릿.tex
fontsize: 10pt
geometry: margin=1in
documentclass: article
---
2.5 beamer
2.5.1 기본 형식
---
title: "제목"
author: "저자"
output: beamer_presentation
---
3 시행착오
- <>를 이용한 하이퍼링크를 생성할 때에는 <>다음에 한칸 띄어쓰기가 있어야 한다.
- rmarkdown을 실행하여 컴파일할 때 .sty, .tex등을 찾을수 없다는 오류가 발생할 경우 rmarkdown이 컴퓨터에 설치되어 있는 latex을 찾지 못해서이다. 따라서 적절한 링크 생성이 필요하다. Centos7의 경우 /usr/share/texmf/tex/latex/ 에 latex 설치폴더의 texmf-dist의 링크를 설정해야 한다.
- 한글의 실행이 되지 않을 경우에는 /usr/lib64/R/library/rmarkdown/rmd에서 형식(beamer, latex)의 default.tex 파일에 \usepackages[hangul]{kotex}를 적절히 추가해야 한다.
- 파일 실행에 앞서 각 Section을 구분할때 (#,##,###,…)사용시 앞뒤로 공백인 줄이 있어야 한다.
- xtable에서 align옵션을 지정할 때에는 rowname까지 생각하여 ncol(data)+1개를 지정해야 한다.
- 기본 문서에서의 date를 그냥 사용할 경우 오류로 실행이 되지 않는다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
댓글 0
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
|---|---|---|---|---|
| 공지 | 오라클 기본 샘플 데이터베이스 | 졸리운_곰 | 2014.01.02 | 86284 |
| 공지 | [SQL컨셉] 서적 "SQL컨셉"의 샘플 데이타 베이스 SAMPLE DATABASE of ORACLE | 가을의 곰을... | 2013.02.10 | 78741 |
| 공지 | [G_SQL] Sample Database | 가을의 곰을... | 2012.05.20 | 95484 |

