在 Visual Studio 中使用 R 語言進行進階資料分析 - 使用 R Tools for Visual Studio

摘要

R 語言是近來相當熱門的統計和資料分析語言,常見到使用 R Studio 來當作 R 語言的 IDE 工具,現在經由安裝 R Tools for Visual Studio(RTVS),就可以在各位開發者所熟悉的 Visual Studio 來撰寫 R 語言,請見本文的介紹。


前置作業

開始之前請依照下列順序安裝所需的軟體:

  1. 下載並安裝 Visual Sutdio 2015(Visual Studio Community 2015即可)。
  2. 下載並安裝 R Tools for Visual Studio
  3. 下載並安裝 Microsoft R Open

安裝 Visual Studio 2015 的部分,相信每位 .NET 開發者都已經很熟悉,在此就不多作介紹,就從安裝 R Tools for Visual Studio 開始作說明。

當您下載並執行 R Tools for Visual Studio,安裝程式會檢查環境中是否存在 Microsoft R Open 引擎。

r1

一旦未發現 R 語言引擎,安裝程式會詢問是否要開啟網頁來協助您下載所需執行環境,點選對話視窗中的 Yes 來開啟 Microsoft R Open 的下載頁面。

r2

請在 MRAN 的下載頁面點選【Download Software】來下載【Microsoft R Open 3.2.3】。

r3

依照所使用的平台來選擇安裝程式,本文以 Windows 為例,點選下方紅色方框處的連結即可下載。

r4

建立 R 語言專案

依照前一節的步驟完成相關安裝後,開啟 Visual Studio 2015 並新增專案就可以看到 R Project 的專案類型。

r5

建立 R 語言專案,首先會看到 Editor 視窗及 R Interactive 視窗(如下圖1、2處),這是每個 R 語言專案的主要工作視窗,其他視窗會隨著R語言程式碼執行時自動出現。

r6

R Tools for Visual Studio 提供那些功能來幫助您使用R語言進行資料分析?請見下一節。

Editor視窗

您可以在 Editor 或 R Interactive視窗撰寫您的 R 語言程式,所有執行結果會出現在下方的 R Interactive 視窗,不論是在 Editor 或 R Interactive 視窗,R Tools for Visual Studio 都提供了 IntelliSense來幫助您更有效率的撰寫R語言程式碼,和其他 Visual Studio 所支援的語言相同,當您輸入程式碼時會自動帶出相關的程式碼,協助完成程式碼的輸入。

fix-7 fix-8

 

 

和 R Studio 一樣,不須選取程式碼直接按【Ctrl+Enter】就可以執行單行的 R 語言程式碼,若要執行多行則可將之選取後再按【Ctrl+Enter】即可執行。

 

fix-9

此外,可以使用 Ctrl+L 來清除 R Interactive視窗的內容,或於視窗中按滑鼠右鍵選擇【清空螢幕】。

r10

若要格式化 R 語言程式碼,可以先將滑鼠游標停留在想要格式化的程式碼上,接著按滑鼠右鍵選擇【格式化選取範圍】,或直接按【Ctrl+K、Ctrl+F】也可以達到將程式碼依照R語言的撰寫習慣來排版的目的。

 

fix-11

格式化程式碼的結果如下圖所示。

r12

您也可以直接用【Ctrl+K、Ctrl+D】來格式化整份 R 語言程式碼檔案,或於功能選單中點選【編輯>格式化文件】亦可達到相同效果。

r13

除上述方式外,透過修改 Editor 的 Automtic formatting 選項,也可以開啟或關閉自動格式化 R 語言程式碼的功能。

r14 r15

更多有關開發 R 語言的編輯器和執行環境的設定,可以從選項視窗來調整。

r16 r17

R Interactive 視窗

R Interactive 視窗可用來輸入並執行 R 語言程式碼,另外 R 語言程式碼檔案(*.R)的執行結果也會出現在此。

r18

所有執行過的 R 語言程式碼無法再做修改,但您可以透過功能選單或使用快速鍵來複製、貼上程式碼或執行結果,也可以使用 Ctrl+L 來清空螢幕。

r19

透過鍵盤的向上或向下箭頭來選擇執行過的 R 語言程式碼,而點選視窗上方的向上或向下箭頭亦可達到相同效果。

r20

所有目前工作階段的各項全域變數、函數定義或載入的套件都會暫存在工作空間(workspace),在關閉 R 語言專案前 Visual Studio 都會詢問是否儲存(*.rdata)。

r21

透過儲存工作空間,在下次開啟時選擇載入工作空間,就可以把前一次執行R語言程式碼執行時存放在記憶體中的相關變數和定義資訊載入進來,您就不需要每次都重新載入套件及資料。

r22

若要清除目前工作階段的暫存在工作空間的內容,可以點選上窗上方的重設按鈕。

r23

R History視窗

所有執行過的R語言程式碼,都會被記錄在 R History 視窗,即使關閉 Visual Studio 再打開,除非選擇【Delete all history entries】或【Delete selected history entries】來將之刪除。

r24

Variable Explorer視窗

在R語言專案中所定義的變數都會出現在 Variable Explorer 視窗,在這個視窗可以看到變數的名稱、內容、類別及資料型別。

r25

其中 data.frame 型態變數的內容無法從 Variable Explorer 視窗直接檢視,必須利用 View 函數來開啟顯示 data.frame 內容的獨立視窗(如下圖)。

r26

R Help 視窗

當您使用?或 help 函數來查詢 R 語言函數的用法時,其說明文件會呈現於 R Help 視窗。對於 R 語言提供的函數用法不清楚時,可以善用這項功能。

r27

R Plot 視窗

R 語言另一個強項就是資料視覺化的能力,R Tools for Visual Studio 也支援繪圖功能,使用 R 語言來繪圖時,會將結果呈現於 R Plot 視窗。

r28

繪圖結果可以匯出成多種格式,包含圖片及 PDF 等。

r29

偵錯

Visual Stduio 強大的偵錯功能在 R 語言當然不能缺席,點選功能表中的【R Tools > Session > Attach Debugger】或 R Interative 視窗的 Attach Debugger,就可以進入偵錯模式。

r30 r31

接著就可以設定所需的中斷點或使用快速鍵來進行偵錯,絕大部分的偵錯命令都和您開發其他語言時相同,在此就不贅述。

r32

R Markdown

R Markdown 可以同時撰寫並執行 R 語言程式碼,並將結果轉成 HTML 文件,使用前必須下載並安裝 pandoc

接著使用 install.packages 函數安裝 knitr 和 rmarkdown 套件。

r33

完成上述步驟後就可以在新增項目時看到 R Markdown 的檔案類型。

r34

於 R Markdown 檔案(*.rmd)的編輯視窗按滑鼠右鍵選擇 Preview,就可以將 R Markdown檔案的內容及執行結果產生成 HTML 或 Word 文件。

r35

以 HTML 為例,產生的結果如下圖所示。

r36

結語

經由上述介紹,您應該可以了解如何使用Visual Studio 2015來開發R語言程式碼,此外,R Tools for Visual Studio 也支援使用 Git 來作版本控管,及搭配 R SDK 就可以增加和 Azure Machine Learning 的整合能力。

R Tools for Visual Studio 目前雖尚在預覽階段,但所提供的功能已經接近 R Studio 等 R 語言的 IDE 工具,在此預告未來將有更多令人興奮的功能釋出,敬請期待!

七分鐘概覽 R Tools for Visual Studio 教學影片