10 Documentation and deployment

Download Report

Transcript 10 Documentation and deployment

1
Practical Data Science with R
PART 3 Delivering Results
- CH.10 Documentation and deployment
KIM JEONG RAE
UOS.DML. 2014.11.8.
Contents

Using knitr to produce milestone documentation

Using comments and version control for running documentation
2
Using knitr to produce milestone documentation

문서화 : 프로젝트 목적, 데이터 검증, 진척상황, 기술적 결과물(숫자, 그래프)을 가독성 있게 요약

Knitr : 프로젝트 문서화
4
Rstudio Setting for Documentation



문서화 처라 요구사항

Rstudio : 통합 개발 환경

R : 데이터 분석 프로그래밍

Markdown, LaTex : 사람이 읽을수 있는 문서를 만들어 주는 언어
요구되는 R package

Knitr[나터] : R과 Markup 언어 연결

Markdown

Devtools
Sweave[스위브] - 문자와 코드를 혼합하는 방법

웹페이지 : HTML → R + R markdown

인쇄물 : PDF → R + LaTex
5
Making LaTex Documentation with R(1/7)

R + LaTex[레이텍]

마크업 언어 : 레이텍

파일 변환 과정 : .Rnw → .tex → .pdf

최종결과물 : PDF파일

R + 레이텍

Chunks 구분자
<<옵션>>=
코드
@

인라인 코드
/Sexpr{코드}
6
Making LaTex Documentation with R(2/7)

LaTex[레이텍] 설치

URL : http://faq.ktug.org/faq/KoTeXLive
7
Making LaTex Documentation with R(3/7)


인코딩 : UTF-8 통일

LaTex : 편집 -> 환경설정

R-Studio : tool-> Global Option
R Sweave setting

Weave Rnw files : knitr

Typeset LaTex : XeLaTex
8
Making LaTex Documentation with R(4/7)

R studio에서 Sweave 파일 만들기
9
Making LaTex Documentation with R(5/7)

Rnw 파일 작성
10
Making LaTex Documentation with R(6/7)

Pdf 파일 작성

Compile PDF 실행
11
Making LaTex Documentation with R(7/7)

변환 생성 pdf파일 확인
12
Making Markdown Documentation with R(1/5)

R + Markdown


마크업 언어 : 마크다운(R 마크다운 패키지 사용)

파일 변환 과정 : .Rmd → .md → .html

최종결과물 : HTML파일
R + 마크다운

Chunks 구분자
```{r옵션}

코드
Rmd 컴파일 과정
```
소스 파일
Knitr( )
마크다운 파일
markdownToHTML( )
HTML 파일

• 확장자 : .Rmd
• 문자 : 마크다운
• 코드 : R
R코드를 실행
그 결과를
마크다운
텍스트와 결합
• 확장자 : .md
• 문자 : 마크다운
마크다운을
HTML로 변환
스타일 시트, 헤더 포함
• 확장자 : .html
• 문자 : HTML
인라인 코드
`r
[백틱]
`
13
Making Markdown Documentation with R(2/5)

R studio에서 마크다운 파일 생성
14
Making Markdown Documentation with R(3/5)

R studio에서 마크다운 파일 생성
15
Making Markdown Documentation with R(4/5)

Rmd 파일 생성

Knit HTML 실행
16
Making Markdown Documentation with R(5/5)

변환 생성 html 파일 확인
17
Using comments and version control


R

주석 : #

Project 관리
Git
18
R code에 Comment

주석 : #
19
R에서 Project 관리(1/2)


Project 관리

물리적 측면 : 문서를 만들기 위한 데이터, 사진, 그림 등을 모아 놓고 작업하는 폴더

논리적 측면 : 세션이나 버전관리를 위한 작업환경 마련(깃)
R에서 Project 생성

New Directory : 새로 작업할 디렉터리를 만들면서 프로젝트를 같이 지정

Existing Directory : 기존에 작업하던 디렉터리를 프로젝트 디렉터리로 지정

Version Control : 버전 관리 시스템에서 만드는 방법
20
R에서 Project 관리(2/2)

New Project 생성

New Directory → Empty Project → Create New Project

R code 및 결과물 지정된 폴더에 저장되어 Project 관리
21
Version control


23
Git [깃]

Linus Torvalds[리누스 토발즈]에 의해 개발된 분산형 버전 관리 도구

작업 전체를 백업 가능

작업 전체를 과거의 한 시점의 상태로 복원 가능

작업을 주제별로 나눠서 한 다음 나중에 머지 가능

한 명이 상용자가 여러 컴퓨터상에서 작업 가능한 편리성 제공

여러 사람들이 공동 작업 가능

깃은 분산시켜 저장하기 때문에 네트워크 한 지점이 손산을 받더라도 남아 있는 클론으로 다시 복구 가능

커밋 발생시 인덱스의 스냅샷(snapshot)을 기록해서 객체 저장소에 저장

스냅샷은 인덱스에 있는 모든 파일과 디렉터리에 대한 복사본을 갖지 않음.(용량 제한)

이전 스냅샷을 비교하여 양향을 받은 파일과 디렉터리의 목록을 추출, 변경된 파일에 사용할 새blob, 변경된 디렉터리에
사용할 새 트리를 생성
참조 사이트 : http://git-scm.com/book/ko/v1
Version control – setting Git(1/6)

Git 설치

Cygwin 기반


URL : http://cygwin.com
네이트브 버전(msysGit)

URL : http://msysgit.github.com/
24
Version control – setting Git(2/6)

Git 설치

Cygwin 기반
25
Version control – setting Git(3/6)

Git 설치

Cygwin 기반
Version control – setting Git(4/6)

Git 설치

Cygwin 기반
Version control – setting Git(5/6)

Git 설치

네이트브 버전(msysGit)
Setting - Git
Version control – setting Git(6/6)

Git 설치

네이트브 버전(msysGit)
Setting - Git
Version control – setting Github(1/2)

Github 가입 / Repository 생성

URL : https://github.com
30
Version control – setting Github(2/2)

Github Repository 생성
31
Version control – Github에 R file push (1/4)

Rstudio에 Git executable Option 설정
32
Version control – Github에 R file push (2/4)

R에서 Git의 원격 저장소로 부터 클론닝 방법으로 프로젝트 만들기
33
Version control – Github에 R file push (3/4)

Git tap 활용하여 commit
34
Version control – Github에 R file push (4/4)

Github에 Push
35
36
감사합니다.