第 2 章 R and RStudio

2.1 主要參考書籍

2.2 What is R? What is RStudio?

RStudio

Integrated Development Environment (IDE) for R

整合開發環境。

2.3 RStudio environment

Editor

Two ways of keeping your scripts (a collection of code lines)

In this course, to save your script we will:

  • mainly use R Markdown/R Notebook: .Rmd file

  • sometimes, R Script: .R file

2.4 R Markdown

參考資料:https://rmarkdown.rstudio.com/

2.4.2 開啟新Rmd文件

https://bookdown.org/yihui/rmarkdown/r-code.html#figures

如何開啟新文件

圖 2.1: 如何開啟新文件

2.4.3 Rmd文件

Rmd結構

圖 2.2: Rmd結構

Front matter

Rmd結構: front matter

圖 2.3: Rmd結構: front matter

  • Setup of the document layout

  • Use YAML language:

    1. 在Rmd的一開頭。

    2. 區塊前後有---夾住。

    3. 使用namevalue pair形式定義文件成品結構,圖中有四個namevalue pairs,分別定義了文件的title, author, dateoutput,這四個文字即為name(有人也稱它為key),它的定義(即value)分別是"Untitled","林茂廷", "2/27/2019"html_document

YAML語法的namevalue pair寫法為name: value,要注意:(為半形分號)的後面「一定要有一個空格」。

Name-value pair的一個空格,文字訊息由"..."包住

圖 2.4: Name-value pair的一個空格,文字訊息由“…”包住

Code chunk

Rmd結構: code chunk

圖 2.5: Rmd結構: code chunk

反頓點在鍵盤的位置

圖 2.6: 反頓點在鍵盤的位置

  • ```{...}開始,以```結束:

    …定義了區塊內是什麼程式語言及文件產生的設定。

  • 中間區塊為程式碼。上例只有一行程式:

    knitr::opts_chunk$set(echo = TRUE)

要執行code chunk內程式碼只需按右上角的

Markdown text area

Rmd結構: markdown text area

圖 2.7: Rmd結構: markdown text area

  • 支援markdown語法的文字寫作區塊。

  • 此區塊的內容不會被當程式碼執行,單純文字寫作用。但因支援markdown,所以輸出時文字內容可以有排版的變化。

Markdown語法可見RMarkdown cheatshet背頁的Pandoc’s Markdown,或依以下方式叫出說明:

Rmd結構: markdown text area

圖 2.8: Rmd結構: markdown text area

2.4.4 產生文件成品

產生文作成品

圖 2.9: 產生文作成品

按文件上方的即可。

本學期多數時候不需要knit RMarkdown文件,同學只是用markdown text area來寫筆記,用code chunks來寫程式。

2.4.5 中文亂碼

現今天很多文件都是UTF-8編碼,但不少Windows環境使用的並不是它,這時請先選reopen with encodin...

Reopen with encoding

圖 2.10: Reopen with encoding

再選UTF-8,勾選Set as default encoding for source files,按OK

設定UTF-8編碼

圖 2.11: 設定UTF-8編碼