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