跳轉到內容

R 程式設計/設定

來自華夏公益教科書

本頁面展示瞭如何安裝 R、自定義 R 以及選擇工作環境。安裝完 R 後,您可能需要選擇一個工作環境。這可以是一個簡單的文字編輯器(如 Emacs、Vim 或 Gedit)、一個整合開發環境 (IDE) 或一個圖形使用者介面 (GUI)。RStudio 目前是一個流行的選擇。

在基於 Debian 的 GNU/Linux 發行版(例如 Ubuntu 或 Debian 本身)上安裝 R 非常簡單,只需在終端中輸入 sudo aptitude install r-basesudo apt-get install r-base(不要忘記這必須以 root 身份執行),或者使用您最喜歡的包管理器(例如 Synaptic)安裝 r-base 包。

還有一些包擴充套件了 R 的功能,適用於不同的用途。它們的名稱以 r- 開頭。仔細檢視 r-recommended 包。它是一個元包,依賴於一組由上游 R 核心團隊推薦的包,作為完整 R 發行版的一部分。可以只安裝此包來安裝 R,因為它依賴於 r-base

使用 apt-get 安裝(Debian、Ubuntu 和所有基於 Debian 的 Linux 發行版)

sudo apt-get install r-base
sudo apt-get install r-recommended

使用 aptitude 安裝(Debian、Ubuntu 和所有基於 Debian 的 Linux 發行版)

sudo aptitude install r-base
sudo aptitude install r-recommended

安裝:訪問 R 專案網站 (http://r-project.org/),選擇“CRAN”頁面並選擇映象。下載磁碟映像(dmg 檔案)並安裝 R。

Mac 的預設圖形使用者介面比 Windows 的好很多。它包括

  • 一個數據框管理器,
  • 所有命令的歷史記錄,
  • 支援語法高亮的程式編輯器。

(部分來源 [1])

要在 Windows 作業系統下安裝 R,您需要從網路上下載二進位制檔案。首先訪問 r-project.org,在左側面板的下載部分點選“CRAN”,並選擇一個映象站點,您可以在該站點下載所需內容。最佳做法是選擇一個最接近您實際地理位置的映象,但其他映象也應該可以正常工作。點選“Windows”,並在子目錄中找到“base”。Windows 二進位制檔案是 exe 檔案,形式為 R-x.x.x-win32.exe,其中 x 表示程式的實際版本。無論版本如何,安裝步驟都相同。

安裝程式

[編輯 | 編輯原始碼]

與往常一樣,在 Windows 中,如果您只是不斷點選“下一步”按鈕,您將在沒有任何問題的情況下安裝程式。但是,有一些事情您可以更改。

  1. 在歡迎螢幕上點選“下一步”。
  2. 閱讀或僅注意到 GNU 許可證,然後點選“下一步”。
  3. 選擇 R 應安裝的位置。如果您不喜歡硬碟上的特定位置,預設選擇對您來說就可以了。
  4. 在下一步中,您可以指定要安裝 R 的哪些部分。選項包括:使用者安裝、最小使用者安裝、完全安裝和自定義安裝。請注意選擇面板下的所需空間(在 20 到 66 MB 之間變化)。如果您是 R 的初學者,請選擇預設的“使用者安裝”。
  5. 在這一步,您可以選擇兩種方式。如果您接受預設值,您將跳過安裝過程中的 3 個“額外”步驟(見下文)。
  6. 您可以指定“開始選單”資料夾。
  7. 在下一步中,您可以選擇快捷方式選項(桌面圖示和/或快速啟動圖示)並指定登錄檔項。


透過這些步驟,您可以自定義 R 圖形使用者介面。

  • 您可以選擇是否要使用覆蓋整個螢幕的 R 圖形使用者介面 (MDI) 或較小的視窗 (SDI)。
  • 您可以選擇幫助螢幕在 R 中顯示的樣式。您會經常使用幫助,所以這可能是一個重要的決定。選擇您喜歡的樣式即可。請注意,無論您的選擇如何,幫助檔案的內容都是相同的。您在這裡只是指定特定視窗的外觀。
  • 在下一步中,您可以指定是否要使用 internet2.dll。如果您是初學者,請在此處選擇“標準”選項。

在 Windows 上更新 R 需要幾個步驟

  1. 下載/安裝最新版本的 R
  2. 將您的包從庫資料夾複製到新 R 安裝中的庫資料夾

這兩步都可以輕鬆地使用 installr 包來完成,只需執行以下命令(該命令將同時安裝包和更新 R)[2]

# installing/loading the package:
if(!require(installr)) { 
install.packages("installr"); require(installr)} #load / install+load installr
updateR() # updates R

還可以使用“全域性”包庫,有關更多詳細資訊,請參見 此處

Windows 的行動式 R

[編輯 | 編輯原始碼]

如果您想將 R 安裝到您的 USB 驅動器上,則可以使用行動式版本[3]。如果您在計算機上沒有管理員許可權,這很有用。基本安裝需要大約 115 MB,但如果您想安裝附加包,則可能需要更多空間。

工作環境

[編輯 | 編輯原始碼]

安裝完 R 後,您需要選擇一個工作環境。在本節中,我們將回顧所有可能的工作環境。這包括基本終端以及 整合開發環境 (IDE)、文字編輯器或 圖形使用者介面 (GUI)。

  • 圖形使用者介面提供一些選單,使您能夠在不編寫程式碼的情況下執行 R。對於初學者來說,這是一個很好的解決方案。
  • 文字編輯器可以輕鬆地編寫程式碼。
  • 整合開發環境提供文字編輯器和編譯器,使您能夠輕鬆地編寫 R 指令碼、執行指令碼並更正指令碼。

請注意,有一些特定任務的 GUI。例如,speedR 提供一個 GUI 來將資料匯入 R。

Linux 上的終端視窗中的 R。

對於 Linux 和 Mac OS 使用者,可以使用終端中的 R。

$ R
> q("no") # to leave R and return to the terminal

對於 Mac OS 和 Windows 使用者,有一個圖形使用者介面。在 Mac OS 中,GUI 包含一個包管理器、一個支援語法高亮的程式編輯器和一個數據瀏覽器。在 Windows 中,GUI 不比 終端 好。


圖形使用者介面

[編輯 | 編輯原始碼]

本節包含針對初學者(例如不熟悉計算的人)的材料。

窮人的 GUI (pmg)

[編輯 | 編輯原始碼]

一個簡單的 GUI,用於學習 R。建議初學者使用。

> install.packages("pmg", dependencies=TRUE)
# Windows users may also run the following scripts to install required libraries
> source("http://www.math.csi.cuny.edu/pmg/installpmg.R")


> library(pmg)

Jaguar : Java GUI for R

[編輯 | 編輯原始碼]
  • Jaguar : Java GUI for R[4] 可用於 Linux、Mac 和 Windows (截圖).
  • 它適合初學者。

R 命令列

[編輯 | 編輯原始碼]
  • Rcommander[5] 由 John Fox 開發,在標準圖形使用者介面中提供了一個選單 (截圖).
  • 它可以在 Linux、Mac 和 Windows 上執行。
  • 對於初學者和不習慣指令碼編輯的人來說,這是一個很好的介面。
> install.packages("Rcmdr") # installation
> library("Rcmdr") # usage
  • Ubuntu 使用者也可以從軟體中心安裝 R 命令列。


整合開發環境

[編輯 | 編輯原始碼]
RStudio 在 Ubuntu 12.10 上。

RStudio 是 R 的整合開發介面[6]

  • 它適用於 Mac、Windows 和 Linux 平臺。
  • 它支援 SweaveLaTeX.
  • 它包含對 R、LaTeX 和 Sweave 的語法高亮顯示。
  • 它包含一種檢視變數和資料幀的方法。
  • 它使載入和安裝包、在幫助檔案中導航以及管理工作區變得容易。
  • 它支援程式碼和檔名完成。
  • 它可以安裝在 USB 驅動器上。

John Verzani 專門為這個新介面寫了一本書,名為 Getting Started with RStudio[7],而 Jeffrey Racine 推薦 RStudio 用於 Sweave[8]

RKward 是一個 IDE 和一個 Linux (KDE) 的 GUI (截圖). RKward 的目標是為 R 提供一個易於擴充套件、易於使用的 IDE/GUI。 RKward 試圖將 R 語言的強大功能與商業統計工具的(相對)易用性相結合。

Eclipse 帶 StatET

[編輯 | 編輯原始碼]

Eclipse 以及 StatET 外掛[9] 為 R 提供了一個 IDE。

  • 它支援 Sweave。

Rattle GUI

[編輯 | 編輯原始碼]
  • 僅限 Windows
  • Tinn R[12] 是 Windows 使用者的一個不錯的 IDE。可以輕鬆地定義鍵盤快捷鍵,以從 Tinn R 執行選定的 R 程式碼。

Notepad++ 和 NpptoR

[編輯 | 編輯原始碼]
  • 僅限 Windows。

Notepad++[13] 和 NPPtoR[14] 提供語法高亮顯示和熱鍵(預設情況下為 F8),用於將程式碼行傳送到 R。可以使用管理使用者定義語言的對話方塊輕鬆地修改語法高亮顯示(選單/檢視/使用定義對話方塊...)。 NPPtoR 提供了一種方法來動態生成語法高亮顯示(取決於 R 環境中所有可用的包)。

Vi、Vim 和 GVim

[編輯 | 編輯原始碼]
  • Vim 和 GVim 提供語法高亮顯示
  • Vim 僅適用於高階使用者
  • Vim-R-plugin 允許 Vim 和 R 之間的通訊

Emacs 和 ESS

[編輯 | 編輯原始碼]
  • Emacs 帶 ESS (Emacs Speaks Statistics)[15]
  • 對於 Linux 使用者,只需使用標準軟體包管理器(synaptic、aptitude、yum 等)安裝 emacs 和 ESS。
  • 對於 Mac 和 Windows 使用者,可以檢視 Vincent Goulet 的頁面,該頁面包含帶有 Emacs 和 ESS 的二進位制檔案[16]
  • 對於 Mac 使用者,Aquamacs Emacs 是一種不錯的解決方案。它是標準 Emacs 編輯器的增強版。
  • 對於 Windows 使用者,XEmacs 是一種不錯的解決方案。


  • 完成 Emacs 和 ESS 的安裝後,只需開啟 Emacs 並開啟或建立副檔名為 .R 的檔案(C-x C-f)。 ESS 將自動載入。
    • C-c M-j 評估當前行
    • C-c M-r 評估當前區域
    • C-c M-b 評估當前緩衝區
  • 由 Andy Eggers 撰寫的 如何在 Windows 中使用 R 和 RWinEdt 擴充套件?[17]
  • WinEdt 不是開源的
  • WinEdt 僅限 Windows。
  • 安裝 RWinEdt 包。

gedit 帶 gedit-r-plugin

[編輯 | 編輯原始碼]
  • 僅限 Linux 使用者。
  • gedit 也有一個名為 gedit-r-plugin 的外掛。這可以使用 Synaptic 或 Linux 平臺上的任何其他軟體包管理器安裝。

自定義 R

[編輯 | 編輯原始碼]

R 配置檔案

[編輯 | 編輯原始碼]

可以使用 Rprofile 檔案自定義 R。在 Linux 中,此檔案儲存在主目錄中。您可以在終端中執行以下命令來編輯它:

$ gedit ~/.Rprofile

如果您經常使用某些包,您可以使用 Rprofile 檔案系統地載入它們。您也可以更改預設選項。

函式 options() 不帶任何引數會顯示所有選項

> options()

可以使用 Sys.setlocale() 修改語言和編碼選項

> Sys.setlocale()
[1] "fr_FR.UTF-8/fr_FR.UTF-8/fr_FR.UTF-8/C/fr_FR.UTF-8/en_US.UTF-8"

預設情況下,錯誤訊息以本地語言顯示。但是,可以使用 Sys.sentev() 將其設定為英文

Sys.setenv(LANGUAGE='en')

參考文獻

[編輯 | 編輯原始碼]
  1. 本節內容來自 Wikiversity 專案 安裝,如何使用 R 課程
  2. 使用 {installr} 包從 R(在 Windows 上)更新 R
  3. 行動式 R http://sourceforge.net/projects/rportable/
  4. http://jgr.markushelbig.org/JGR.html
  5. http://socserv.mcmaster.ca/jfox/Misc/Rcmdr/
  6. rstudio.org
  7. John Verzani“RStudio 入門:R 的整合開發環境”,O'Reilly Media,2011 年 9 月
  8. Jeffrey Racine,(即將出版),“RStudio:R 和 Sweave 的平臺無關 IDE”,《應用計量經濟學雜誌》。
  9. StatET : http://www.walware.de/goto/statet
  10. Rattle : http://rattle.togaware.com/
  11. Graham J Williams. Rattle:R 的資料探勘 GUI。《R 雜誌》,第 1 卷(第 2 期):45-55,2009 年 12 月
  12. Tinn 代表 Tinn Is Not Notepad http://www.sciviews.org/Tinn-R/
  13. 請注意,Notepad++ 可以安裝在 USB 記憶棒上 http://sourceforge.net/projects/notepadpluspe/
  14. NPPtoR 也是一個行動式軟體 http://sourceforge.net/projects/npptor/
  15. ESS : http://ess.r-project.org/
  16. Vincent Goulet Emacs 頁面 http://vgoulet.act.ulaval.ca/emacs
  17. http://www.people.fas.harvard.edu/~aeggers/RWinEdt_installation.pdf
上一個:資料型別 索引 下一個:包
華夏公益教科書