R Markdown與RStudio IDE深度結合

The RStudio IDE 擁有非常多的獨特設計,該設計能夠方便編寫執行互動式文檔,本文介紹以下幾點主要設計。

  1. 文件樣板
  2. 使用 R Markdown
  3. Markdown 快速指導
  4. 執行按鈕
  5. 預覽框
  6. 文檔選項
  7. 插入代碼塊
  8. 發布到shinyapps.io
  9. R Markdown 控制台

如下圖所示:

1. 文件模板

當你打開新的.Rmd文件時候, RStudio IDE 提供一個模板文件,打開新文件的「姿勢」:File> New File > R Markdown.

打開後,將會彈出YAML幫助對話框:

在對話框中的側邊欄,可以選擇.Rmd的輸出類型,以下:

  • Document - 靜態文檔
  • Presentation - ioslides 或 beamer 幻燈片
  • Shiny - 互動式文檔
  • From Template - 利用你曾經保存的模板類型

用複選框選擇你想要的輸出格式,選項功能與文件類型不同而不同。

你也可以通過代碼窗口輸出文件類型進行修改。

為了製作一個互動式文檔,選在Shiny(側邊欄),選擇 Shiny文檔(複選框) ,ok!

RStudio將會打開一個新 .Rmd 文件,文件包含YAML內容,包括所有文件參數,當然你必須用正確的 rmarkdown::render(),你也可以後續手動修改參數。

RStudio將創建一個簡單的模板範文,呈現少數基礎的特性,那麼,這就意味這你能立馬執行這個文件,下圖展示了互動式文件的模板。

2. 使用R Markdown

當你打開.Rmd文件,IDE在腳本框中有一個問號「?」,這個"?"可以打開下拉菜單,展現兩個非常棒的教學資源。

「Using R Markdown,」選項打開R markdown網頁 :,rmarkdown.rstudio.com. 這裡有功能介紹,隨時可以查詢。

3. Markdown Quick Reference

「Markdown Quick Reference,」 打開 markdown 語法嚮導,嚮導出現在幫助框。

嚮導用一個範例來展示markdown語法,在行文過程中,對照使用簡介有效。

4. 執行命令按鈕

如果.Rmd文件包含 runtime: shiny 在YAML 頭條, RStudio IDE 將在腳本框中自動顯示:「Run Document」 。

「Run Document」 是rmarkdown::render 命令的快捷方式,能夠快速執行渲染 .Rmd 文件,. The RStudio IDE執行結果將視窗展示。

同時你可以一邊編輯 .Rmd文件一邊預覽結果, 保存文件可以看到最終結果,「refresh」功能早就為你準備好了。

如果 .Rmd文件不包含 runtime: shiny, RStudio IDE 將展示「Knit HTML」 按鈕代替 「Run Document」, 「Knit HTML」按鈕有類似的功能,它 渲染文件並展示輸出結果。

Knit HTML按鈕有下拉菜單可以選擇最終的輸出結果的文件類型。

5. 預覽框

默認RStudio IDE 會自動視窗展示Rmd文件的預覽結果,不過,你可以選擇輸出場景,「View in Pane」在「Knit HTML」下拉菜單當中。

6. 文件選項

「Run Document」 右側的工具選項能夠自定義互動式文檔,嚮導功能如下:

  • 包含內容框
  • 語法高亮
  • bootstrap CSS 主題
  • 自定義css
  • 標題號
  • 尺寸和添加題注的數字
  • 調整呈現過程

RStudio IDE 將在點擊 「Run Document」之後執行設定。

7. 插入組塊

在腳本框的左上角,組塊按鈕的下拉菜單能夠很好的幫助你管理你的文件。

.

第一個選項非常值得稱讚,能夠在游標為之插入一個代碼塊,在此基礎上可以隨意編寫代碼,

8. 發布到 shinyapps.io

如果安裝了 shinyapps 包,詳見( Getting started with shinyapps.io, ),RStudio IDE 在互動式預覽窗口的右上角有一個發布按鈕,非常好用。

在網站發布之後,文檔就有web的URL,可供其他人訪問。

9. R Markdown控制台

一旦執行渲染 .Rmd文件,RStudio IDE 打開第二個控制台來展示輸出,這個對話框不但展示執行過程,而且會提示代碼錯誤,若是互動式文檔,對話框將會提示對應的app的錯誤。

推薦閱讀:

Zynga數據分析全盛期
使用R實現一個簡單的連續系統模擬
數據學習之路—每周好文分享(第三期)
」數據咖「的自我修鍊
機器學習之前,讓「大熊貓」先嘗一嘗數據的味道

TAG:R编程语言 | 数据分析 | 互联网 |