天天看點

《R語言資料分析與挖掘實戰》——2.2 R使用入門

本節書摘來自華章計算機《r語言資料分析與挖掘實戰》一書中的第2章,第2.2節,作者 張良均,雲偉标,王路,劉曉勇,更多章節内容可以通路雲栖社群“華章計算機”公衆号檢視。

r軟體的界面與其他程式設計軟體相類似,是由一些菜單和快捷按鈕組成,如圖2-2所示。快捷按鈕下面的視窗便是指令輸入視窗,它也是部分運算結果的輸出視窗,有些運算結果(如圖形)則會在建立的視窗中輸出。主視窗上方的一些文字是剛運作r時出現的一些說明和指引,文字下的“>”符号便是r的指令提示符,在其後可輸入指令。r一般采用互動式工作方式,在指令提示符後輸入指令,回車後便會輸出計算結果。當然也可将所有的指令建立成一個檔案,運作這個檔案的全部或部分來執行相應的指令,進而得到相應的結果。

《R語言資料分析與挖掘實戰》——2.2 R使用入門

菜單欄如圖2-2中标号為1的視窗所示,位于工作環境的最上方。file(檔案)菜單可以實作以下功能:輸入r代碼、建立新的程式腳本、打開程式腳本、顯示檔案、載入工作空間、儲存工作空間、載入曆史、儲存曆史、改變目前目錄、列印、儲存到檔案以及退出;edit(編輯)菜單可以實作複制、粘貼、清除控制台和資料編輯等功能;view(視圖)菜單可以選擇是否顯示工具欄;misc(其他)菜單可以實作中斷目前計算、緩沖輸出及列出目标對象等功能;packages(程式包)菜單可以實作載入程式包、設定cran鏡像、安裝以及更新程式包等功能;windows(視窗)菜單可以選擇将所有視窗層疊或者平鋪;help(幫助)菜單提供r的常見問答和幫助途徑。當執行不同的視窗操作時,菜單的内容就會發生不同的變化。如打開r檔案或一個編寫好的r函數後,菜單欄就會缺失view(視圖)、misc(其他)兩個菜單欄選項。

工具欄如标号為2的視窗所示,從左至右可以依次進行打開程式腳本、載入映像、儲存映像、複制、粘貼、複制和粘貼、終止目前計算以及列印的操作。當打開r檔案或一個編寫好的r函數時,工具欄會發生相應的變化,此時的快捷按鈕從左至右依次為打開程式腳本、儲存映像、運作目前行代碼或所選代碼、傳回主界面以及列印。

指令視窗如标号為3的視窗所示,是r進行工作的視窗,也是實作r各種功能的視窗。其中的“>”是指令提示符,表示r處于準備編輯的狀态,使用者可以直接在指令提示符後輸入指令語句,按“enter”鍵執行。

rstudio的啟動界面如圖2-3所示,由代碼編輯、指令控制台、資源欄和其他欄組合而成。

《R語言資料分析與挖掘實戰》——2.2 R使用入門

代碼編輯欄可以進行代碼的編輯,以及打開r腳本或者txt文本。建立新的檔案可以從file→new裡選擇,打開檔案可以從目錄file→open或者從open recent目錄裡打開最近的檔案。運作檔案可以選擇相應的代碼,點選run按鈕。

指令控制台:代碼運作後,控制台會顯示相應的代碼或者傳回結果。也可以在指令控制台單獨輸入指令,和r的指令模式相同。

其他欄是關于r使用方面的顯示欄。可以在packages目錄下進行r包的安裝以及加載(包安裝好後,并不可以直接使用,如果需要使用包,必須在每次使用前将包加載到記憶體中,可以直接選擇包或者在控制台輸入library(package_name)指令)。在help目錄下有關于r相關函數或者指令的幫助。在plot目錄下會顯示圖形相關方面的描述。

(1)help

功能:提供r函數和r檔案的線上式幫助。

在指令視窗輸入help(函數名),或?函數名,按“enter”鍵執行,或者在r的幫助(help)菜單下的search help彈出框輸入函數名,都可打開幫助浏覽器。幫助浏覽器是r自帶的幫助系統,是學習r的一個非常有用的工具。例如,要了解plot函數,可以在指令視窗輸入help(plot),或?plot,按“enter”鍵執行,或者在search help彈出框中輸入plot,如圖2-4所示,即可獲得plot函數的使用幫助。

《R語言資料分析與挖掘實戰》——2.2 R使用入門

使用幫助中主要包括6部分内容:description(函數說明)部分描述函數的主要功能;usage(用法)部分給出了plot函數的調用方法;arguments(參數)部分給出輸入參數的詳細解釋,包括輸入參數的取值範圍、資料格式等;details(詳情)部分給出了和該函數相關的資訊;see also(其他)部分則提供了與該函數相關的其他函數的連結;examples(例子)部分給出了plot函數的常用例子,使用者可以直接運作示例程式得到結果,得到對該函數的一個直覺的印象。有些函數的幫助文檔還包括:value(輸出參數)部分給出了輸出參數的較長的描述,類似輸入參數;references(參考文獻)部分給出了有關學者對該函數的研究文獻。

使用r的幫助系統是一種快速學習和掌握r的有效方法。下面以繪制一個給定的時序y的時序圖為例進行說明。r中最基本的繪圖指令是plot,我們在幫助系統中查找plot,檢視其基本文法,找到和自己需求相關的文法,這裡使用plot(x,y)文法即可。接下來檢視其文法詳細解釋,由于這裡的y是一個時序向量,直接調用即可。然後編寫腳本代碼,運作程式,即可得到所要的時序圖。當然在檢視完文法的詳細解釋後還可以檢視其示例程式,直接複制其代碼片段到指令視窗執行,檢視結果。這樣就會不單單對plot函數停留在簡單了解的水準上。最後,針對所作的時序圖,如果需要進一步調整,如設定标題、x軸、y軸等資訊,還可以在see also(其他)裡面查詢到相關的函數。

(2)ctrl+l

功能:清除指令窗中的所有顯示内容。

(3)rm(list=ls())

功能:清除r工作空間中的記憶體變量。

一般利用rm(list=ls())指令與gc()指令,清除記憶體變量并釋放記憶體空間。

(4)install.packages、library

功能:install.packages()用來下載下傳和安裝包;library()函數不僅可以顯示庫中有哪些包,還可以載入所下載下傳的包,進而在會話中使用包。

(5)getwd、setwd

功能:擷取或者設定目前工作目錄的位置。

(6)save、load

功能:save将r工作空間中的指定對象儲存到指定的檔案中,load從磁盤檔案中讀取一個工作空間到目前會話中。

(7)read.table、write.table、read.csv、write.csv

功能:read.table、read.csv讀取excel、txt或者csv檔案到目前工作空間;write.table、write.csv把目前工作空間的資料寫入到excel、txt或者csv檔案中。

(8)odbcconnect、sqlfetch、sqlquery

功能:odbcconnect建立一個到odbc資料庫的連接配接;sqlfetch讀取odbc資料庫中的某個表到r的一個資料框中;sqlquery向odbc資料庫送出一個查詢并傳回結果。

第一步是針對你的系統和資料庫類型安裝和配置合适的odbc驅動——它們并不是r的一部分。針對選擇的資料庫安裝并配置好驅動後,請安裝rodbc包。r通過rodbc包通路一個資料庫的示例程式,如代碼清單2-1所示。

《R語言資料分析與挖掘實戰》——2.2 R使用入門

(9)source、sink

功能:source(“filename”)可在目前會話中執行一個腳本;sink(“filename”)将輸出重定向到檔案filename中。預設情況下,如果檔案已經存在,則它的内容将被覆寫;使用參數append=true可以将文本追加到檔案後;參數split=true可将輸出同時發送到螢幕和輸出檔案中。不加參數調用指令sink()将僅向螢幕傳回輸出結果。

(10)plot

功能:畫圖,可以設定參數進行定制的圖像繪制。例如,使用代碼清單2-2可以實作讀取excel的時間序列資料,然後進行定制作圖。

《R語言資料分析與挖掘實戰》——2.2 R使用入門