Edit

R Markdown 소개 및 환경설정

 

R Markdown Markdown Manual R Markdown

 

데이터 분석가의 주요 업무 중의 하나는 향후에 참고자료로 활용하기 위해 작업 결과물을 문서화 해야 하는데, 상당량의 보고서를 작성해서 분석과정과 출력 결과를 기술해야만 합니다.

보통의 과정은 아래과 같을 것입니다.

  • 1단계: 본인의 작업을 위해서 R 스크립트 작성

  • 2단계: 다양한 그래프가 첨부된 분석 결과를 Word, PPT 분석 결과를 기술해서 동료 또는 메신저로 분석 결과 전송

  • 3단계: 분석결과 토의

  • 4단계: 각각의 그래프 결과 코드를 매칭 하기 위한 작업이 토의 중 발생

  • 5단계: 혼란 및 불필요한 시간 소요 발생

그런데, 해당 작업물을 그 때 마다 웹페이지(HTML)를 생성하여 자체 서버 내 구축할 수 있다면, 그러면 위 5단계의 과정을 3단계(소스코드 작성웹 게시분석결과 토의)로 축소할 수가 있을 것이며 특히, 연구자가 분석 당시의 고민과 문제점들을 스크롤링과 함께 같이 고민할 수 있는 시간으로 빠져들 수 있도록 유도할 수 있습니다.

데이터 분석 보고서는 보고서의 작성이 연구자의 끝이 아니기 때문에 분석의 과정과 결과물을 잘 정리하여 의사결정을 하는데 반드시 도움이 되어야 하는 일종의 마지막 제안서와 같습니다.

본 게시물은 R을 처음 접하는 데이터 분석가를 위해서 작성하였습니다. 사내의 보고서 문화 혁신에 기여하기를 바라는 마음과 함께!!


Step 1. R 마크다운 파일 생성

R 마크다운 파일 생성은 아래와 같이 생성할 수 있습니다.
RStudio에서 File → New File → R Markdown을 클릭하시면 아래와 같이 대화 상자가 열립니다.

Title과 Author를 설정 한 후 HTML로 클릭합니다.


Step 2. R 마크다운 기본 구성요소

기본 구조는 아래와 같이 확인 될 것입니다.

구성 1. Header

초기 설정된 텍스트 덩어리에 R에 대한 지시사항이 담겨있다: 제목, 저자명, 날짜, html 출력물(다른 말로, 웹페이지)을 생성할지가 포함됩니다.

더보기
---
title: "Initial R Markdown document"
author: "Evan Jung"
date: "10/4/2019"
output: html_document
---

위 필드는 임의 삭제가 가능하나, 경험적으로는 포함시키는 것이 좋습니다.

구성 2. R 코드 덩어리 - Set Up

더보기

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```

위 구성은 R 마크다운 문서의 기본 Set Up 코드이기 때문에 유지하는 것을 원칙으로 합니다. 위 코드 상 옵션에 대한 설명은 아래와 같습니다.

  • setup: 소스코드 덩어리에 대한 title이며, 다른 소스코드 덩어리와 중복 작성 시, 에러가 발생합니다.

  • include=FALSE: 문서에는 포함시키지 않고, 몰래 실행할 수 있으며, 주로 최초 설정에 이용됩니다.

  • knitr::opts_chunk$set에서 디폴트 옵션을 설정할 수 있으며, echo = TRUE는 코드를 보여줍니다. 그 외 옵션은 아래를 확인하여 주시기를 바랍니다.1

    • eval = F: 코드 실행하지 않는다.

    • echo = F: 코드를 보여주지 않는다.

    • include=F: 실행 결과를 보여주지 않는다.

    • message=F: 실행 때 나오는 메시지를 보여주지 않는다.

    • warning=F: 실행 때 나오는 경고를 보여주지 않는다.

    • error=T: 에러가 있어도 실행하고 에러코드를 보여준다.

    • fig.height=(number): R에서 작성한 그래프를 그림의 높이를 조정할 수 있다.

    • fig.width=(number): R에서 작성한 그림의 넓이를 높이를 조정할 수 있다.

    • fig.align=’center’ : R에서 작성한 그림의 위치를 변경할 수 있다.

     

그 외 옵션을 확인하려면 아래와 같이 코드를 입력 후 실행하면 결과값이 나옵니다.

더보기

knitr::opts_chunk$get()

구성 3. R 코드 덩어리 - 작업 코드 예제

더보기

```{r}
summary(cars)
```

knitr로 실행되면, R 코드 덩어리를 실행결과와 함께 나타납니다.

Step 3. 마크다운(Markdown)문법에 대한 이해

마크다운은 2004년 12월에 처음 등장한 것으로 보입니다.2 마크다운을 활용하여 작성된 문서는 보다 쉽고 빠르게 HTML 등 다른 문서 형태로 변환이 가능합니다. 특별히, R Markdown은 R 사용자를 위한 Markdown으로 이해하시면 좋습니다.

기본 문법 1. Bold & Italic

별표*를 활용하여 굵게 또는 이탤릭체로 변환할 수 있습니다.

  • 굵게: **굵게(bold)**

  • 이탤릭: *이탤릭(italic)*

기본문법 2. 구분점

아래와 같이 하이픈- 혹은 별표*를 적용해서 구분점이 붙은 항목을 생성할 수 있습니다.

더보기

* 위 그래프는 ~ 
* 위 표는 ~
* 따라서, ~

혹은 아래와 같이 작성도 가능합니다.

더보기

- 위 그래프는 ~ 
- 위 표는 ~
- 따라서, ~

코드 실행 시, 다음과 같이 웹페이지로 보이게 됩니다.

  • 위 그래프는 ~

  • 위 표는 ~

  • 따라서, ~

숫자 사용을 활용한 구분점도 아래와 같이 적용하면 가능합니다.

더보기

1. 위 그래프는 ~
2. 위 표는 ~
3. 따라서, ~

코드 실행 시, 다음과 같이 웹페이지로 보여지게 됩니다.

  1. 위 그래프는 ~

  2. 위 표는 ~

  3. 따라서, ~

기본 문법 3. 섹션 제목 만들기

섹션 제목을 만들려면 # 기호를 활용하여 각 라인 첫 번째 적용하게 되면 다른 크기를 갖는 섹션 제목을 만들 수 있을 뿐만 아니라, 위 섹션이 목차로 재 활용될 수 있습니다.

더보기
# 첫번째 제목 (Title)
## 두번째 제목 (Main Section)
### 세번째 제목 (Sub-Section)
#### 네번째 제목 (Sub-sub section)

첫번째 제목 (Title)

두 번째 제목 (Main Section)

세 번째 제목 (Sub-Section)

네 번째 제목 (Sub-sub Section)

Step 4. 마크다운(Markdown) 다양한 기능 사용

기능 1. 하이퍼링크

독립적으로 링크 코드를 입력하거나, 또는 문장 중간에 삽입이 가능합니다. 아래와 같은 방법으로 입력하시면 됩니다.

더보기

문법: [text](링크)
예시: [네이버](https://www.naver.com)

네이버 클릭하시면(→) 네이버 네이버 메인 화면에 연결됩니다.

기능 2. 이미지 삽입

아래와 같은 방법으로 이미지를 삽입할 수 있습니다.

더보기

문법: ![caption](경로)
예시: ![타펀](./Ta-fun.png)

다만, image size 작업 조정을 직접 하려면 R 코드 덩어리에 아래와 같은 방법으로 작업할 수도 있습니다. (예: out.width=”400px”, out.height=”400px”)

더보기

```{r, out.width = "400px"}
knitr::include_graphics("path/to/image.png")
```

다만, 경험적으로 봤을 때는 개별 이미지를 수정하려면 HTML 소스 코드 또는 소스코드를 직접 입력하는 것을 권장합니다.

test.Rmd

더보기
---
title: "Initial R Markdown document"
author: "Evan Jung"
date: "10/4/2019"
output: html_document
css: test.css
---
 
## Page with an image {#myImagePage}
![Image](path/to/image)

test.css

더보기

#myImagePage img {
  width: 400px;
  height: 200px;
}​

 

기능 3. LaTeX expression

수식 작성법은 Latex라는 문법을 참조해서 작성할 수 있습니다.

더보기
$$ x = \dfrac{-b \pm \sqrt{b^2 - 4ac}}{2a} $ 

기능 4. 인라인(Inline) R 코드

인라인 R코드를 활용하는 가장 궁극적인 목적은 보고서의 모든 숫자를 재현 가능하게 만들기 위해서입니다. 인라인 코드를 작성할 때 `r`을 사용합니다. 예를 들어, `r 2+2` 또는 `r round(some_value, 2)` . R 코드가 실행되어 코드가 결과 값으로 치환됩니다.

Step 5. 다른 언어와의 호환성 (고급)

R과 함께 파이썬 또는 SQL을 다루는 머신러닝 개발자가 있다고 가정합니다. 그러면 R Markdown 안에서도 python 코드를 실행 후 작업할 수가 있습니다. 다만, 이때에는 코드 덩어리를 파이썬 또는 sql로 명명해야 적용이 가능합니다.

예를 들면 아래와 같이 작성이 가능합니다.

더보기

```{r}
summary(cars)
```
위 데이터의 결과값은 ~


```{python}
@requires_authorization
def somefunc(param1='', param2=0):
    '''A docstring'''
    if param1 > param2: # interesting
        print 'Greater'
    return (param2 - param1 + 1) or None
class SomeClass:
    pass
>>> message = '''interpreter
... prompt'''
```


(Option) 더 공부하기

위에서 제공한 자료를 가지고도 충분히 보고서를 작성하는 데는 부족함이 없습니다. 다만, 보고서를 조금 더 풍성하게 만들고자 한다면 매뉴얼을 참고해서 보다 전문적으로 작성하는 권장 합니다.


FAQ


  1. “R Markdown 기초”, “Zarathu Official Blog”, 2019년 1월 3일 수정, 2019년 10월 4일 접속, https://blog.zarathu.com/posts/2019-01-03-rmarkdown/
  2. “Markdown”, “Daring Fireball”, 2004년 12월 17일 수정, 2019년 10월 4일 접속, https://daringfireball.net/projects/markdown/
%0A%23%20R%20Markdown%20%uC18C%uAC1C%20%uBC0F%20%uD658%uACBD%uC124%uC815%0A%0A@%28R%20Markdown%29%5BMarkdown%7CManual%7CR%20Markdown%5D%0A%0A%uB370%uC774%uD130%20%uBD84%uC11D%uAC00%uC758%20%uC8FC%uC694%20%uC5C5%uBB34%20%uC911%uC758%20%uD558%uB098%uB294%20%uD5A5%uD6C4%uC5D0%20%uCC38%uACE0%uC790%uB8CC%uB85C%20%uD65C%uC6A9%uD558%uAE30%20%uC704%uD574%20%uC791%uC5C5%uACB0%uACFC%uB97C%20%uBB38%uC11C%uD654%20%uD574%uC57C%20%uD558%uB294%uB370%2C%20%uC0C1%uB2F9%uB7C9%uC758%20%uBCF4%uACE0%uC11C%uB97C%20%uC791%uC131%uD574%uC11C%20%uBD84%uC11D%uACFC%uC815%uACFC%20%uCD9C%uB825%uACB0%uACFC%uB97C%20%uAE30%uC220%uD574%uC57C%uB9CC%20%uD569%uB2C8%uB2E4.%20%0A%0A%uBCF4%uD1B5%uC758%20%uACFC%uC815%uC740%20%uC544%uB798%uACFC%20%uAC19%uC744%20%uAC83%uC785%uB2C8%uB2E4.%20%0A-%201%uB2E8%uACC4%3A%20%uBCF8%uC778%uC758%20%uC791%uC5C5%uC744%20%uC704%uD574%uC11C%20R%20%uC2A4%uD06C%uB9BD%uD2B8%20%uC791%uC131%0A-%202%uB2E8%uACC4%3A%20%uB2E4%uC591%uD55C%20%uADF8%uB798%uD504%uAC00%20%uCCA8%uBD80%uB41C%20%uBD84%uC11D%uACB0%uACFC%uB97C%20Word%2C%20PPT%20%uBD84%uC11D%uACB0%uACFC%uB97C%20%uAE30%uC220%uD574%uC11C%20%uB3D9%uB8CC%20%uB610%uB294%20%uBA54%uC2E0%uC800%uB85C%20%uBD84%uC11D%uACB0%uACFC%20%uC804%uC1A1%0A-%203%uB2E8%uACC4%3A%20%uBD84%uC11D%uACB0%uACFC%20%uD1A0%uC758%0A-%204%uB2E8%uACC4%3A%20%uAC01%uAC01%uC758%20%uADF8%uB798%uD504%20%uACB0%uACFC%20%uCF54%uB4DC%uB97C%20%uB9E4%uCE6D%uD558%uAE30%20%uC704%uD55C%20%uC791%uC5C5%uC774%20%uD1A0%uC758%20%uC911%20%uBC1C%uC0DD%0A-%205%uB2E8%uACC4%3A%20%uD63C%uB780%20%uBC0F%20%uBD88%uD544%uC694%uD55C%20%uC2DC%uAC04%20%uC18C%uC694%20%uBC1C%uC0DD%20%20%0A%0A%uADF8%uB7F0%uB370%2C%20%uD574%uB2F9%20%uC791%uC5C5%uBB3C%uC744%20%uADF8%20%uB54C%20%uB9C8%uB2E4%20%uC6F9%uD398%uC774%uC9C0%28HTML%29%uC744%20%uC0DD%uC131%uD558%uC5EC%20%uC790%uCCB4%20%uC11C%uBC84%uB0B4%20%uAD6C%uCD95%uD560%20%uC218%20%uC788%uB2E4%uBA74%2C%20%uADF8%uB7EC%uBA74%20%uC704%205%uB2E8%uACC4%uC758%20%uACFC%uC815%uC744%203%uB2E8%uACC4%28**%uC18C%uC2A4%uCF54%uB4DC%20%uC791%uC131**%20%26%238594%20**%uC6F9%20%uAC8C%uC2DC**%20%26%238594%20**%uBD84%uC11D%uACB0%uACFC%20%uD1A0%uC758**%29%uB85C%20%uCD95%uC18C%uD560%20%uC218%uAC00%20%uC788%uC744%20%uAC83%uC774%uBA70%20%uD2B9%uD788%2C%20%uC5F0%uAD6C%uC790%uAC00%20%uBD84%uC11D%20%uB2F9%uC2DC%uC758%20%uACE0%uBBFC%uACFC%20%uBB38%uC81C%uC810%uB4E4%uC744%20%uC2A4%uD06C%uB864%uB9C1%uACFC%20%uD568%uAED8%20%uAC19%uC774%20%uACE0%uBBFC%uD560%20%uC218%20%uC788%uB294%20%uC2DC%uAC04%uC73C%uB85C%20%uBE60%uC838%uB4E4%20%uC218%20%uC788%uB3C4%uB85D%20%uC720%uB3C4%uD560%20%uC218%20%uC788%uC2B5%uB2C8%uB2E4.%20%0A%0A%uB370%uC774%uD130%20%uBD84%uC11D%20%uBCF4%uACE0%uC11C%uB294%20%uBCF4%uACE0%uC11C%uC758%20%uC791%uC131%uC774%20%uC5F0%uAD6C%uC790%uC758%20%uB05D%uC774%20%uC544%uB2C8%uB77C%20%uACB0%uACFC%uBB3C%uC744%20%uD1A0%uB300%uB85C%20%uC758%uC0AC%uACB0%uC815%uC744%20%uD558%uB294%uB370%20%uBC18%uB4DC%uC2DC%20%uC218%uBC18%uB418%uC5B4%uC57C%20%uD560%20%uACFC%uC815%uC774%uAE30%20%uB54C%uBB38%uC785%uB2C8%uB2E4.%20%uBCF8%20%uAC8C%uC2DC%uBB3C%uC740%20R%uC744%20%uCC98%uC74C%20%uC811%uD558%uB294%20%uB370%uC774%uD130%20%uBD84%uC11D%uAC00%uB97C%20%uC704%uD574%uC11C%20%uC791%uC131%uD558%uC600%uC2B5%uB2C8%uB2E4.%20%0A%0A%uC0AC%uB0B4%uC758%20%uBCF4%uACE0%uC11C%20%uBB38%uD654%20%uD601%uC2E0%uC5D0%20%uAE30%uC5EC%uD558%uAE30%uB97C%20%uBC14%uB77C%uB294%20%uB9C8%uC74C%uACFC%20%uD568%uAED8%21%21%0A%0A----------%0A%0A%0A%0A%5BTOC%5D%0A%0A%23%23%20Step%201.%20R%20%uB9C8%uD06C%uB2E4%uC6B4%20%uD30C%uC77C%20%uC0DD%uC131%0AR%20%uB9C8%uD06C%uB2E4%uC6B4%20%uD30C%uC77C%20%uC0DD%uC131%uC740%20%uC544%uB798%uC640%20%uAC19%uC774%20%uC0DD%uC131%uD560%20%uC218%20%uC788%uC2B5%uB2C8%uB2E4.%20%0ARStudio%uC5D0%uC11C%20File%20%26%238594%20New%20File%20%26%238594%20R%20Markdown%uC744%20%uD074%uB9AD%uD558%uC2DC%uBA74%20%uC544%uB798%uC640%20%uAC19%uC774%20%uB300%uD654%uC0C1%uC790%uAC00%20%uC5F4%uB9BD%uB2C8%uB2E4.%20%0A%21%5Bnew%20r%20markdown%5D%28./R%20Markdown.png%29%0A%0ATitle%uACFC%20Author%uB97C%20%uC124%uC815%20%uD55C%20%uD6C4%20HTML%uB85C%20%uD074%uB9AD%uD569%uB2C8%uB2E4.%20%0A%0A%23%23%20Step%202.%20R%20%uB9C8%uD06C%uB2E4%uC6B4%20%uAE30%uBCF8%20%uAD6C%uC131%uC694%uC18C%0A%uAE30%uBCF8%20%uAD6C%uC870%uB294%20%uC544%uB798%uC640%20%uAC19%uC774%20%uD655%uC778%20%uB420%20%uAC83%uC785%uB2C8%uB2E4.%20%0A%21%5BAlt%20text%5D%28./R%20Markdown%20Basic.png%29%0A%0A%23%23%23%20%uAD6C%uC131%201.%20Header%0A%uCD08%uAE30%20%uC124%uC815%uB41C%20%uD14D%uC2A4%uD2B8%20%uB369%uC5B4%uB9AC%uC5D0%20R%uC5D0%20%uB300%uD55C%20%uC9C0%uC2DC%uC0AC%uD56D%uC774%20%uB2F4%uACA8%uC788%uB2E4%3A%20%uC81C%uBAA9%2C%20%uC800%uC790%uBA85%2C%20%uB0A0%uC9DC%2C%20html%20%uCD9C%uB825%uBB3C%28%uB2E4%uB978%20%uB9D0%uB85C%2C%20%uC6F9%uD398%uC774%uC9C0%29%uC744%20%uC0DD%uC131%uD560%uC9C0%uAC00%20%uD3EC%uD568%uB429%uB2C8%uB2E4.%20%0A%60%60%60r%0A---%0Atitle%3A%20%22Initial%20R%20Markdown%20document%22%0Aauthor%3A%20%22Evan%20Jung%22%0Adate%3A%20%2210/4/2019%22%0Aoutput%3A%20html_document%0A---%0A%60%60%60%0A%uC704%20%uD544%uB4DC%uB294%20%uC784%uC758%20%uC0AD%uC81C%uAC00%20%uAC00%uB2A5%uD558%uB098%2C%20%uACBD%uD5D8%uC801%uC73C%uB85C%uB294%20%uD3EC%uD568%20%uC2DC%uD0A4%uB294%20%uAC83%uC774%20%uC88B%uC2B5%uB2C8%uB2E4.%0A%0A%23%23%23%20%uAD6C%uC131%202.%20R%20%uCF54%uB4DC%20%uB369%uC5B4%uB9AC%20-%20Set%20Up%0A%3Cpre%3E%0A%26%2396%3B%26%2396%3B%26%2396%3B%7Br%20setup%2C%20include%3DFALSE%7D%0Aknitr%3A%3Aopts_chunk%24set%28echo%20%3D%20TRUE%29%0A%26%2396%3B%26%2396%3B%26%2396%3B%0A%3C/pre%3E%0A%0A%uC704%20%uAD6C%uC131%uC740%20R%20%uB9C8%uD06C%uB2E4%uC6B4%20%uBB38%uC11C%uC758%20%uAE30%uBCF8%20Set%20Up%20%uCF54%uB4DC%uC774%uAE30%20%uB54C%uBB38%uC5D0%20%uC720%uC9C0%uD558%uB294%20%uAC83%uC744%20%uC6D0%uCE59%uC73C%uB85C%20%uD569%uB2C8%uB2E4.%20%uC704%20%uCF54%uB4DC%20%uC0C1%20%uC635%uC158%uC5D0%20%uB300%uD55C%20%uC124%uBA85%uC740%20%uC544%uB798%uC640%20%uAC19%uC2B5%uB2C8%uB2E4.%0A-%20setup%3A%20%uC18C%uC2A4%uCF54%uB4DC%20%uB369%uC5B4%uB9AC%uC5D0%20%uB300%uD55C%20title%uC774%uBA70%2C%20%uB2E4%uB978%20%uC18C%uC2A4%uCF54%uB4DC%20%uB369%uC5B4%uB9AC%uC640%20%uC911%uBCF5%20%uC791%uC131%20%uC2DC%2C%20%uC5D0%uB7EC%uAC00%20%uBC1C%uC0DD%uD569%uB2C8%uB2E4.%20%0A-%20include%3DFALSE%3A%20%uBB38%uC11C%uC5D0%uB294%20%uD3EC%uD568%uC2DC%uD0A4%uC9C0%20%uC54A%uACE0%2C%20%uBAB0%uB798%20%uC2E4%uD589%uD560%20%uC218%20%uC788%uC73C%uBA70%2C%20%uC8FC%uB85C%20%uCD5C%uCD08%20%uC124%uC815%uC5D0%20%uC774%uC6A9%uB429%uB2C8%uB2E4.%20%0A-%20knitr%3A%3Aopts_chunk%24set%uC5D0%uC11C%20%uB514%uD3F4%uD2B8%20%uC635%uC158%uC744%20%uC124%uC815%uD560%20%uC218%20%uC788%uC73C%uBA70%2C%20echo%20%3D%20TRUE%uB294%20%uCF54%uB4DC%uB97C%20%uBCF4%uC5EC%uC90D%uB2C8%uB2E4.%20%uADF8%20%uC678%20%uC635%uC158%uC740%20%uC544%uB798%uB97C%20%uD655%uC778%uD558%uC5EC%20%uC8FC%uC2DC%uAE30%uB97C%20%uBC14%uB78D%uB2C8%uB2E4.%5B%5E1%5D%0A%09-%20**eval%20%3D%20F**%3A%20%uCF54%uB4DC%20%uC2E4%uD589%uD558%uC9C0%20%uC54A%uB294%uB2E4.%0A%09-%20**echo%20%3D%20F**%3A%20%uCF54%uB4DC%uB97C%20%uBCF4%uC5EC%uC8FC%uC9C0%20%uC54A%uB294%uB2E4.%20%0A%09-%20**include%3DF**%3A%20%uC2E4%uD589%20%uACB0%uACFC%uB97C%20%uBCF4%uC5EC%uC8FC%uC9C0%20%uC54A%uB294%uB2E4.%20%0A%09-%20**message%3DF**%3A%20%uC2E4%uD589%20%uB54C%20%uB098%uC624%uB294%20%uBA54%uC138%uC9C0%uB97C%20%uBCF4%uC5EC%uC8FC%uC9C0%20%uC54A%uB294%uB2E4.%20%0A%09-%20**warning%3DF**%3A%20%uC2E4%uD589%20%uB54C%20%uB098%uC624%uB294%20%uACBD%uACE0%uB97C%20%uBCF4%uC5EC%uC8FC%uC9C0%20%uC54A%uB294%uB2E4.%20%0A%09-%20**error%3DT**%3A%20%uC5D0%uB7EC%uAC00%20%uC788%uC5B4%uB3C4%20%uC2E4%uD589%uD558%uACE0%20%uC5D0%uB7EC%uCF54%uB4DC%uB97C%20%uBCF4%uC5EC%uC900%uB2E4.%20%0A%09-%20**fig.height%3D%28number%29**%3A%20R%uC5D0%uC11C%20%uC791%uC131%uD55C%20%uADF8%uB798%uD504%uB97C%20%uADF8%uB9BC%uC758%20%uB192%uC774%uB97C%20%uC870%uC815%uD560%20%uC218%20%uC788%uB2E4.%20%0A%09-%20**fig.width%3D%28number%29**%3A%20R%uC5D0%uC11C%20%uC791%uC131%uD55C%20%uADF8%uB9BC%uC758%20%uB113%uC774%uB97C%20%uB192%uC774%uB97C%20%uC870%uC815%uD560%20%uC218%20%uC788%uB2E4.%20%0A%09-%20**fig.align%3D%27center%27**%20%3A%20R%uC5D0%uC11C%20%uC791%uC131%uD55C%20%uADF8%uB9BC%uC758%20%uC704%uCE58%uB97C%20%uBCC0%uACBD%uD560%20%uC218%20%uC788%uB2E4.%20%0A%0A%uADF8%20%uC678%20%uC635%uC158%uC744%20%uD655%uC778%uD558%uB824%uBA74%20%uC544%uB798%uC640%20%uAC19%uC774%20%uCF54%uB4DC%uB97C%20%uC785%uB825%20%uD6C4%20%uC2E4%uD589%uD558%uBA74%20%uACB0%uACFC%uAC12%uC774%20%uB098%uC635%uB2C8%uB2E4.%20%0A%3Cpre%3E%0Aknitr%3A%3Aopts_chunk%24get%28%29%0A%3C/pre%3E%0A%0A%5B%5E1%5D%3A%20%22R%20Markdown%20%uAE30%uCD08%22%2C%20%22Zarathu%20Official%20Blog%22%2C%202019%uB144%201%uC6D4%203%uC77C%20%uC218%uC815%2C%202019%uB144%2010%uC6D4%204%uC77C%20%uC811%uC18D%2C%20https%3A//blog.zarathu.com/posts/2019-01-03-rmarkdown/%20%0A%0A%23%23%23%20%uAD6C%uC131%203.%20R%20%uCF54%uB4DC%20%uB369%uC5B4%uB9AC%20-%20%uC791%uC5C5%uCF54%uB4DC%20%uC608%uC81C%0A%3Cpre%3E%0A%26%2396%3B%26%2396%3B%26%2396%3B%7Br%7D%0Asummary%28cars%29%0A%26%2396%3B%26%2396%3B%26%2396%3B%0A%3C/pre%3E%0A%60knitr%60%uB85C%20%uC2E4%uD589%uB418%uBA74%2C%20R%20%uCF54%uB4DC%20%uB369%uC5B4%uB9AC%uB97C%20%uC2E4%uD589%uACB0%uACFC%uC640%20%uD568%uAED8%20%uB098%uD0C0%uB0A9%uB2C8%uB2E4.%20%20%0A%0A%23%23%20Step%203.%20%uB9C8%uD06C%uB2E4%uC6B4%28Markdown%29%uBB38%uBC95%uC5D0%20%uB300%uD55C%20%uC774%uD574%0A%uB9C8%uD06C%uB2E4%uC6B4%uC740%202004%uB144%2012%uC6D4%uC5D0%20%uCC98%uC74C%20%uB4F1%uC7A5%uD55C%20%uAC83%uC73C%uB85C%20%uBCF4%uC785%uB2C8%uB2E4.%5B%5E2%5D%20%uB9C8%uD06C%uB2E4%uC6B4%uC744%20%uD65C%uC6A9%uD558%uC5EC%20%uC791%uC131%uB41C%20%uBB38%uC11C%uB294%20%uBCF4%uB2E4%20%uC27D%uACE0%20%uBE60%uB974%uAC8C%20HTML%20%uB4F1%20%uB2E4%uB978%20%uBB38%uC11C%20%uD615%uD0DC%uB85C%20%uBCC0%uD658%uC774%20%uAC00%uB2A5%uD569%uB2C8%uB2E4.%20%uD2B9%uBCC4%uD788%2C%20R%20Markdown%uC740%20R%uC0AC%uC6A9%uC790%uB97C%20%uC704%uD55C%20Markdown%uC73C%uB85C%20%uC774%uD574%uD558%uC2DC%uBA74%20%uC88B%uC2B5%uB2C8%uB2E4.%20%0A%0A%5B%5E2%5D%3A%20%22Markdown%22%2C%20%22Daring%20Fireball%22%2C%202004%uB144%2012%uC6D4%2017%uC77C%20%uC218%uC815%2C%202019%uB144%2010%uC6D4%204%uC77C%20%uC811%uC18D%2C%20https%3A//daringfireball.net/projects/markdown/%0A%0A%23%23%23%20%uAE30%uBCF8%uBB38%uBC95%201.%20Bold%20%26%20Italic%0A%uBCC4%uD45C%60*%60%uB97C%20%uD65C%uC6A9%uD558%uC5EC%20%uAD75%uAC8C%20%uB610%uB294%20%uC774%uD0E4%uB9AD%uCCB4%uB85C%20%uBCC0%uD658%uD560%20%uC218%20%uC788%uC2B5%uB2C8%uB2E4.%20%0A-%20**%uAD75%uAC8C**%3A%20%60**%uAD75%uAC8C%28bold%29**%60%20%0A-%20*%uC774%uD0E4%uB9AD*%3A%20%60*%uC774%uD0E4%uB9AD%28italic%29*%60%20%0A%0A%23%23%23%20%uAE30%uBCF8%uBB38%uBC95%202.%20%uAD6C%uBD84%uC810%0A%uC544%uB798%uC640%20%uAC19%uC774%20%uD558%uC774%uD508%60-%60%20%uD639%uC740%20%uBCC4%uD45C%60*%60%uB97C%20%uC801%uC6A9%uD574%uC11C%20%uAD6C%uBD84%uC810%uC774%20%uBD99%uC740%20%uD56D%uBAA9%uC744%20%uC0DD%uC131%uD560%20%uC218%20%uC788%uC2B5%uB2C8%uB2E4.%20%0A%3Cpre%3E%0A*%20%uC704%20%uADF8%uB798%uD504%uB294%20%7E%20%0A*%20%uC704%20%uD45C%uB294%20%7E%0A*%20%uB530%uB77C%uC11C%2C%20%7E%0A%3C/pre%3E%0A%uD639%uC740%20%uC544%uB798%uC640%20%uAC19%uC774%20%uC791%uC131%uB3C4%20%uAC00%uB2A5%uD569%uB2C8%uB2E4.%20%0A%3Cpre%3E%0A-%20%uC704%20%uADF8%uB798%uD504%uB294%20%7E%20%0A-%20%uC704%20%uD45C%uB294%20%7E%0A-%20%uB530%uB77C%uC11C%2C%20%7E%0A%3C/pre%3E%0A%uCF54%uB4DC%20%uC2E4%uD589%20%uC2DC%2C%20%uB2E4%uC74C%uACFC%20%uAC19%uC774%20%uC6F9%uD398%uC774%uC9C0%uB85C%20%uBCF4%uC5EC%uC9C0%uAC8C%20%uB429%uB2C8%uB2E4.%20%0A-%20%uC704%20%uADF8%uB798%uD504%uB294%20%7E%0A-%20%uC704%20%uD45C%uB294%20%7E%0A-%20%uB530%uB77C%uC11C%2C%20%7E%0A%0A%uC22B%uC790%20%uC0AC%uC6A9%uC744%20%uD65C%uC6A9%uD55C%20%uAD6C%uBD84%uC810%uB3C4%20%uC544%uB798%uC640%20%uAC19%uC774%20%uC801%uC6A9%uD558%uBA74%20%uAC00%uB2A5%uD569%uB2C8%uB2E4.%20%0A%3Cpre%3E%0A1.%20%uC704%20%uADF8%uB798%uD504%uB294%20%7E%0A2.%20%uC704%20%uD45C%uB294%20%7E%0A3.%20%uB530%uB77C%uC11C%2C%20%7E%0A%3C/pre%3E%0A%uCF54%uB4DC%20%uC2E4%uD589%20%uC2DC%2C%20%uB2E4%uC74C%uACFC%20%uAC19%uC774%20%uC6F9%uD398%uC774%uC9C0%uB85C%20%uBCF4%uC5EC%uC9C0%uAC8C%20%uB429%uB2C8%uB2E4.%20%0A1.%20%uC704%20%uADF8%uB798%uD504%uB294%20%7E%0A2.%20%uC704%20%uD45C%uB294%20%7E%0A3.%20%uB530%uB77C%uC11C%2C%20%7E%0A%0A%23%23%23%20%uAE30%uBCF8%uBB38%uBC95%203.%20%uC139%uC158%20%uC81C%uBAA9%20%uB9CC%uB4E4%uAE30%0A%uC139%uC158%20%uC81C%uBAA9%uC744%20%uB9CC%uB4E4%uB824%uBA74%20%60%23%60%20%20%uAE30%uD638%uB97C%20%uD65C%uC6A9%uD558%uC5EC%20%uAC01%20%uB77C%uC778%20%uCCAB%uBC88%uC9F8%20%uC801%uC6A9%uD558%uAC8C%20%uB418%uBA74%20%uB2E4%uB978%20%uD06C%uAE30%uB97C%20%uAC16%uB294%20%uC139%uC158%20%uC81C%uBAA9%uC744%20%uB9CC%uB4E4%20%uC218%20%uC788%uC744%20%uBFD0%uB9CC%20%uC544%uB2C8%uB77C%2C%20%uC704%20%uC139%uC158%uC774%20%uBAA9%uCC28%uB85C%20%uC7AC%20%uD65C%uC6A9%uB420%20%uC218%20%uC788%uC2B5%uB2C8%uB2E4.%20%0A%60%60%60%0A%23%20%uCCAB%uBC88%uC9F8%20%uC81C%uBAA9%20%28Title%29%0A%23%23%20%uB450%uBC88%uC9F8%20%uC81C%uBAA9%20%28Main%20Section%29%0A%23%23%23%20%uC138%uBC88%uC9F8%20%uC81C%uBAA9%20%28Sub-Section%29%0A%23%23%23%23%20%uB124%uBC88%uC9F8%20%uC81C%uBAA9%20%28Sub-sub%20section%29%0A%60%60%60%0A%23%20%uCCAB%uBC88%uC9F8%20%uC81C%uBAA9%20%28Title%29%0A%23%23%20%uB450%uBC88%uC9F8%20%uC81C%uBAA9%20%28Main%20Section%29%0A%23%23%23%20%uC138%uBC88%uC9F8%20%uC81C%uBAA9%20%28Sub-Section%29%0A%23%23%23%23%20%uB124%uBC88%uC9F8%20%uC81C%uBAA9%20%28Sub-sub%20Section%29%0A%0A%23%23%20Step%204.%20%uB9C8%uD06C%uB2E4%uC6B4%28Markdown%29%20%uB2E4%uC591%uD55C%20%uAE30%uB2A5%20%uC0AC%uC6A9%0A%23%23%23%20%uAE30%uB2A5%201.%20%uD558%uC774%uD37C%uB9C1%uD06C%0A%uB3C5%uB9BD%uC801%uC73C%uB85C%20%uB9C1%uD06C%20%uCF54%uB4DC%uB97C%20%uC785%uB825%uD558%uAC70%uB098%2C%20%uB610%uB294%20%uBB38%uC7A5%20%uC911%uAC04%uC5D0%20%uC0BD%uC785%uC774%20%uAC00%uB2A5%uD569%uB2C8%uB2E4.%20%uC544%uB798%uC640%20%uAC19%uC740%20%uBC29%uBC95%uC73C%uB85C%20%uC785%uB825%uD558%uC2DC%uBA74%20%uB429%uB2C8%uB2E4.%20%0A%60%60%60%0A%uBB38%uBC95%3A%20%5Btext%5D%28%uB9C1%uD06C%29%0A%uC608%uC2DC%3A%20%5B%uB124%uC774%uBC84%5D%28https%3A//www.naver.com%29%0A%60%60%60%0A%uB124%uC774%uBC84%20%uD074%uB9AD%uD558%uC2DC%uBA74%28%26%238594%29%20%5B%uB124%uC774%uBC84%5D%28https%3A//www.naver.com%29%20%uB124%uC774%uBC84%20%uBA54%uC778%20%uD654%uBA74%uC5D0%20%uC5F0%uACB0%uB429%uB2C8%uB2E4.%20%0A%0A%23%23%23%20%uAE30%uB2A5%202.%20%uC774%uBBF8%uC9C0%20%uC0BD%uC785%0A%uC544%uB798%uC640%20%uAC19%uC740%20%uBC29%uBC95%uC73C%uB85C%20%uC774%uBBF8%uC9C0%uB97C%20%uC0BD%uC785%uD560%20%uC218%20%uC788%uC2B5%uB2C8%uB2E4.%20%0A%60%60%60%0A%uBB38%uBC95%3A%20%21%5Bcaption%5D%28%uACBD%uB85C%29%0A%uC608%uC2DC%3A%20%21%5B%uD0C0%uD380%5D%28./Ta-fun.png%29%0A%60%60%60%0A%21%5B%uD0C0%uD380%5D%28./Ta-fun.png%29%20%0A%0A%uB2E4%uB9CC%2C%20image%20size%20%uC791%uC5C5%20%uC870%uC815%uC744%20%uC9C1%uC811%20%uD558%uB824%uBA74%20R%20%uCF54%uB4DC%20%uB369%uC5B4%uB9AC%uC5D0%20%uC544%uB798%uC640%20%uAC19%uC740%20%uBC29%uBC95%uC73C%uB85C%20%uC791%uC5C5%uD560%uC218%uB3C4%20%uC788%uC2B5%uB2C8%uB2E4.%20%28%uC608%3A%20out.width%3D%22400px%22%2C%20out.height%3D%22400px%22%29%0A%3Cpre%3E%0A%26%2396%3B%26%2396%3B%26%2396%3B%7Br%2C%20out.width%20%3D%20%22400px%22%7D%0Aknitr%3A%3Ainclude_graphics%28%22path/to/image.png%22%29%0A%26%2396%3B%26%2396%3B%26%2396%3B%0A%3C/pre%3E%0A%uB2E4%uB9CC%2C%20%uACBD%uD5D8%uC801%uC73C%uB85C%20%uBD24%uC744%20%uB54C%uB294%20%uAC1C%uBCC4%20%uC774%uBBF8%uC9C0%uB97C%20%uC218%uC815%uD558%uB824%uBA74%20HTML%20%uC18C%uC2A4%20%uCF54%uB4DC%20%uB610%uB294%20%uC18C%uC2A4%uCF54%uB4DC%uB97C%20%uC9C1%uC811%20%uC785%uB825%uD558%uB294%20%uAC83%uC744%20%uAD8C%uC7A5%uD569%uB2C8%uB2E4.%20%20%0A%3Cbr%3E%0Atest.Rmd%0A%60%60%60r%0A---%0Atitle%3A%20%22Initial%20R%20Markdown%20document%22%0Aauthor%3A%20%22Evan%20Jung%22%0Adate%3A%20%2210/4/2019%22%0Aoutput%3A%20html_document%0Acss%3A%20test.css%0A---%0A%0A%23%23%20Page%20with%20an%20image%20%7B%23myImagePage%7D%0A%21%5BImage%5D%28path/to/image%29%0A%60%60%60%0A%3Cbr%3E%0Atest.css%0A%60%60%60css%0A%23myImagePage%20img%20%7B%0A%20%20width%3A%20400px%3B%0A%20%20height%3A%20200px%3B%0A%7D%0A%60%60%60%0A%0A%23%23%23%20%uAE30%uB2A5%203.%20LaTeX%20expression%0A%uC218%uC2DD%uC791%uC131%uBC95%uC740%20%5BLatex%5D%28https%3A//www.latex-project.org/%29%uB77C%uB294%20%uBB38%uBC95%uC744%20%uCC38%uC870%uD574%uC11C%20%uC791%uC131%uD560%20%uC218%20%uC788%uC2B5%uB2C8%uB2E4.%20%0A%60%60%60%0A%24%24%09x%20%3D%20%5Cdfrac%7B-b%20%5Cpm%20%5Csqrt%7Bb%5E2%20-%204ac%7D%7D%7B2a%7D%20%24%24%0A%60%60%60%0A%24%24%09x%20%3D%20%5Cdfrac%7B-b%20%5Cpm%20%5Csqrt%7Bb%5E2%20-%204ac%7D%7D%7B2a%7D%20%24%24%0A%0A%23%23%23%20%uAE30%uB2A5%204.%20%uC778%uB77C%uC778%28Inline%29%20R%20%uCF54%uB4DC%0A%uC778%uB77C%uC778%20R%uCF54%uB4DC%uB97C%20%uD65C%uC6A9%uD558%uB294%20%uAC00%uC7A5%20%uAD81%uADF9%uC801%uC778%20%uBAA9%uC801%uC740%20%uBCF4%uACE0%uC11C%uC758%20%uBAA8%uB4E0%20%uC22B%uC790%uB97C%20%uC7AC%uD604%uAC00%uB2A5%uD558%uAC8C%20%uB9CC%uB4E4%uAE30%20%uC704%uD574%uC11C%uC785%uB2C8%uB2E4.%20%uC778%uB77C%uC778%20%uCF54%uB4DC%uB97C%20%uC791%uC131%uD560%20%uB54C%20%3Ccode%3E%26%2396%3Br%3C/code%3E%uC640%20%3Ccode%3E%26%2396%3B%3C/code%3E%uC744%20%uC0AC%uC6A9%uD569%uB2C8%uB2E4.%20%uC608%uB97C%20%uB4E4%uC5B4%2C%20%3Ccode%3E%26%2396%3Br%202+2%26%2396%3B%3C/code%3E%20%uB610%uB294%20%3Ccode%3E%26%2396%3Br%20round%28some_value%2C%202%29%26%2396%3B%3C/code%3E%20.%20R%20%uCF54%uB4DC%uAC00%20%uC2E4%uD589%uB418%uC5B4%20%uCF54%uB4DC%uAC00%20%uACB0%uACFC%20%uAC12%uC73C%uB85C%20%uCE58%uD658%uB429%uB2C8%uB2E4.%20%0A%0A%23%23%20Step%205.%20%uB2E4%uB978%20%uC5B8%uC5B4%uC640%uC758%20%uD638%uD658%uC131%20%28%uACE0%uAE09%29%0AR%uACFC%20%uD568%uAED8%20%uD30C%uC774%uC36C%20%uB610%uB294%20SQL%uC744%20%uB2E4%uB8E8%uB294%20%uBA38%uC2E0%uB7EC%uB2DD%20%uAC1C%uBC1C%uC790%uAC00%20%uC788%uB2E4%uACE0%20%uAC00%uC815%uD569%uB2C8%uB2E4.%20%uADF8%uB7EC%uBA74%20R%20Markdown%20%uC548%uC5D0%uC11C%uB3C4%20python%20%uCF54%uB4DC%uB97C%20%uC2E4%uD589%20%uD6C4%20%uC791%uC5C5%uD560%20%uC218%uAC00%20%uC788%uC2B5%uB2C8%uB2E4.%20%uB2E4%uB9CC%2C%20%uC774%uB54C%uC5D0%uB294%20%uCF54%uB4DC%20%uB369%uC5B4%uB9AC%uB97C%20%uD30C%uC774%uC36C%20%uB610%uB294%20sql%uB85C%20%uBA85%uBA85%uD574%uC57C%20%uC801%uC6A9%uC774%20%uAC00%uB2A5%uD569%uB2C8%uB2E4.%20%0A%0A%uC608%uB97C%20%uB4E4%uBA74%20%uC544%uB798%uC640%20%uAC19%uC774%20%uC791%uC131%uC774%20%uAC00%uB2A5%uD569%uB2C8%uB2E4.%20%20%0A%3Cpre%3E%0A%26%2396%3B%26%2396%3B%26%2396%3B%7Br%7D%0Asummary%28cars%29%0A%26%2396%3B%26%2396%3B%26%2396%3B%0A%uC704%20%uB370%uC774%uD130%uC758%20%uACB0%uACFC%uAC12%uC740%20%7E%0A%3Cbr%3E%0A%26%2396%3B%26%2396%3B%26%2396%3B%7Bpython%7D%0A@requires_authorization%0Adef%20somefunc%28param1%3D%27%27%2C%20param2%3D0%29%3A%0A%20%20%20%20%27%27%27A%20docstring%27%27%27%0A%20%20%20%20if%20param1%20%3E%20param2%3A%20%23%20interesting%0A%20%20%20%20%20%20%20%20print%20%27Greater%27%0A%20%20%20%20return%20%28param2%20-%20param1%20+%201%29%20or%20None%0Aclass%20SomeClass%3A%0A%20%20%20%20pass%0A%3E%3E%3E%20message%20%3D%20%27%27%27interpreter%0A...%20prompt%27%27%27%0A%26%2396%3B%26%2396%3B%26%2396%3B%0A%3C/pre%3E%0A%0A%23%23%20%28Option%29%20%uB354%20%uACF5%uBD80%uD558%uAE30%0A%uC704%uC5D0%uC11C%20%uC81C%uACF5%uD55C%20%uC790%uB8CC%uB97C%20%uAC00%uC9C0%uACE0%uB3C4%20%uCDA9%uBD84%uD788%20%uBCF4%uACE0%uC11C%uB97C%20%uC791%uC131%uD558%uB294%uB370%uB294%20%uBD80%uC871%uD568%uC774%20%uC5C6%uC2B5%uB2C8%uB2E4.%20%uB2E4%uB9CC%2C%20%uBCF4%uACE0%uC11C%uB97C%20%uC870%uAE08%20%uB354%20%uD48D%uC131%uD558%uAC8C%20%uB9CC%uB4E4%uACE0%uC790%20%uD55C%uB2E4%uBA74%20%uBA54%uB274%uC5BC%uC744%20%uCC38%uACE0%uD574%uC11C%20%uBCF4%uB2E4%20%uC804%uBB38%uC801%uC73C%uB85C%20%uC791%uC131%uD558%uB294%20%uAD8C%uC7A5%uD569%uB2C8%uB2E4.%20%0A-%20%5BR%20Markdown%20%uACF5%uC2DD%20%uD648%uD398%uC774%uC9C0%5D%28https%3A//rmarkdown.rstudio.com/%29%0A-%20%5BR%20%uB9C8%uD06C%uB2E4%uC6B4%20%uACF5%uC2DD%20%uBA54%uB274%uC5BC%5D%28https%3A//bookdown.org/yihui/rmarkdown/%29%0A-%20%5BR%20%uB9C8%uD06C%uB2E4%uC6B4%20Cheet%20Sheet%20%20PDF%20%uD30C%uC77C%20%uB2E4%uC6B4%uB85C%uB4DC%5D%28https%3A//github.com/rstudio/cheatsheets/raw/master/rmarkdown-2.0.pdf%29%0A%0A%23%23%20FAQ%0A-%20Email%3A%20%3Cj2hoon85@gmail.com%3E%0A

 

'R > [R] 잡동사니' 카테고리의 다른 글

Jupyter Notebook + R 연동하기  (1) 2019.01.24
Edit

Jupyter Notebook + R 연동하기


강의를 해야하는 상황이 점점 오고 있습니다. 기존에 RStudio를 써봐서 강의를 진행하기도 하였지만, 강의를 듣는 청자의 입장에서 이것저것 불편한 점이 많았습니다.

RStudio가 개발 환경에서는 분명 좋기는 하지만, 무언가 더 좋은 프로그램이 없을까 고민하던 찰나에 python 데이터 분석가가 주로 사용한다는 Jupyter NotebookR과 연동이 된다는 얘기를 듣게 되어 바로 환경설치 작업에 들어갑니다. 

몇몇 싸이트를 참고하기는 했습니다만, 대표적으로 글을 써야겠다고 느낀점은 아래 StackOverFlow에서 근본적인 원인을 발견하고, 해결하여, 비슷한 경험이 없기를 바라는 마음에 작성합니다. 

rJava not loading in Jupyter Notebook with R kernel

참고로 제 개발환경은 아래와 같습니다.

> sessionInfo()
R version 3.5.2 (2018-12-20)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS Mojave 10.14.2

Matrix products: default

BLAS: /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.5/Resources/lib/libRlapack.dylib

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages:
[1] stats graphics grDevices utils datasets methods base
  • 1. 첫번째, 환경설정 시 주의해야 할 사항

주의!

기존에 R 사용자는 Jupyter Notebook를 사용하기 위해 Anaconda를 다운받지 마세요.

  • 보통 위 그림과 같이 Jupyter Notebook를 사용하기 위해 Anaconda를 많이 사용합니다. 저 역시, 처음 Python을 배울 때는 Jupyter Notebook을 사용했습니다.

  • Anaconda와 기존에 설치된 R을 다시 연결해야 하는데, 초보자에게는 쉽지 않습니다.

  • Anaconda에서 R을 설치하려면 아래와 같이 명령어를 입력해야 합니다.

$ conda install -c r r-essentials

WHY?

  • 간단한 통계분석을 한다고 하면, 사실 상관이 없습니다.

  • 그런데, rJava 패키지를 활용하려면 자바 경로를 Anaconda에 맞게끔 재 설정해야 합니다.

  • 즉, 기존에 설치된 RRStudio에서는 이상없이 설치되는 패키지가 Anaconda Jupyter notebook에서는 에러가 되는 상황이 발생이 됩니다.

  • 이유는, Anaconda Jupyter notebook이 자바 경로와 설정이 되지 않았기 때문입니다.

  • 다시 말하면, 시스템 초보자에게는 이 부분이 매우 어려울 수 있습니다.

  • 저 역시, rJavaAnacondaJupyter notebook과 연결이 되지 않아 결국 Anaconda를 전체 삭제했습니다.

2. 두번째, Jupyter Notebook 설치

Jupyter 설치 방법은 링크를 앞에 Jupyter를 클릭하시기 바랍니다.


(1) Python 버전 확인

먼저 터미널을 엽니다. (Terminal)

터미널은 위와 같이 생겼습니다.


$ python --version
Python 3.7.1

(2) 버전에 맞게 설치 방법 확인

Jupyterpip이라는 설치 모듈(module)이라는 도구를 활용하여 설치를 진행합니다.

$ python3 -m pip install --upgrade pip
$ python3 -m pip install jupyter

설치가 완료가 되면 먼저 jupyter notebook를 실행합니다.

$ jupyter notebook

3. IRkernel 패키지 설치

IRkernel 패키지는 일종의 Jupyter notebookR이 등록될 수 있도록 도와주는 패키지로 이해하면 좋을 듯 합니다. Windows, MacOS, Linux 등 각 OS에 맞는 자세한 설치방법은 IRkernel 홈페이지에 있습니다.

저는 맥북 사용자이기 때문에 MacOS 설치 버전을 아래 그림과 같이 따라했습니다.

$ xcode-select --install
$ brew install zmq
# or upgrade
$ brew update
$ brew upgrade zmq

(1) brew가 없으신 분들을 위해

brew는 일종의 맥북 패키지 관리자 도구입니다. 자세한 설치방법은 Homebrew 홈페이지를 참조하시기를 바랍니다.

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

(2) MacPorts

저는 주로 brew를 이용합니다만, MacPorts를 사용하시는 분들을 위해 남겨 놓습니다.

$ xcode-select --install
$ sudo port install zmq
$ export CPATH=/opt/local/include
$ export LIBRARY_PATH=/opt/local/lib

4. R Package 설치

주의!

  • R App 또는 RStudio에서 해당 패키지를 설치하지 말아주세요.

  • 홈페이지에서는 다음과 같이 경고 합니다.

    On OS X, be sure to execute this in R started from the Terminal, not the R App!
    (This is because the R app doesn’t honor $PATH changes in ~/.bash_profile)

  • 간단히 말하면, 위 패키지는 R과 경로 설정이 안되어 있다는 뜻입니다.

  • Terminal에서 R을 실행합니다.

$ R

R을 실행하면 아래와 같은 화면이 나오면 정상적으로 실행이 완료가 된 것입니다.


이제, R 패키지를 위 화면에서 설치합니다.

> install.packages(c('repr', 'IRdisplay', 'IRkernel'), type = 'source')

5. R kernel을 Jupyter에 등록하기

이제 마지막입니다. 아래와 같이 입력한 후 결과값이 나와야 합니다. 설치가 정상적으로 완료되면, q() 함수를 이용하여 다시 터미널 환경으로 돌아옵니다.

> IRkernel::installspec()
[InstallKernelSpec] Removing existing kernelspec in /Users/jihoonjung/Library/Jupyter/kernels/ir
[InstallKernelSpec] Installed kernelspec ir in /Users/jihoonjung/Library/Jupyter/kernels/ir
> q()

6. Jupyter notebook에서 R Kernel 확인하기

실제로 R Kernel이 등록되었는지 확인합니다.

jupyter notebook

아래 그림에서 보는 것처럼 정상적으로 설치가 되었고, rJava도 정상적으로 호출이 되었습니다.



[R에서 딥러닝 해보실래요?https://cozydatascientist.tistory.com/77


'R > [R] 잡동사니' 카테고리의 다른 글

[R 마크다운 소개] R Markdown 소개 및 환경설정  (0) 2019.10.04

+ Recent posts