R语言第一讲
?一、R語言入門推薦
練習(xí)源碼:
install.packages('ggplot2') library(ggplot2) update.packages()v = c(1,4,4,3,2,2,3) v[c(2,3,4)] v[2:4] v[c(2,4,3)] v[-2] v[-2:-4] v[v<3] which(v==3) set.seed(250) a = runif(3, min=0, max=100) floor(a) #向下保留整數(shù)的函數(shù) ceiling(a) #向上保留整數(shù)的函數(shù) round(a,4) #保留四位小數(shù)? ? ? ? R提供了大量的幫助功能,學(xué)會(huì)如何使用這些幫助文檔可以在相當(dāng)程度上助力你的編程工作。 R的內(nèi)置幫助系統(tǒng)提供了當(dāng)前已安裝包中所有函數(shù)①的細(xì)節(jié)、參考文獻(xiàn)以及使用示例。幫助文檔可 以通過表1-2中列出的函數(shù)進(jìn)行查看。?
? ? ? ? 函數(shù)help.start()會(huì)打開一個(gè)瀏覽器窗口,我們可在其中查看入門和高級的幫助手冊、常 見問題集,以及參考材料。函數(shù)RSiteSearch()可在在線幫助手冊和R-Help郵件列表的討論存 檔中搜索指定主題,并在瀏覽器中返回結(jié)果。由函數(shù)vignette()函數(shù)返回的vignette文檔一般是 PDF格式的實(shí)用介紹性文章。
三、了解工作空間
? ? ? ? ?工作空間(workspace)就是當(dāng)前R的工作環(huán)境,它儲(chǔ)存著所有用戶定義的對象(向量、矩陣、 函數(shù)、數(shù)據(jù)框、列表)。在一個(gè)R會(huì)話結(jié)束時(shí),你可以將當(dāng)前工作空間保存到一個(gè)鏡像中,并在下 次啟動(dòng)R時(shí)自動(dòng)載入它。各種命令可在R命令行中交互式地輸入。使用上下方向鍵查看已輸入命 令的歷史記錄。這樣我們就可以選擇一個(gè)之前輸入過的命令并適當(dāng)修改,最后按回車重新執(zhí)行它。
 ?當(dāng)前的工作目錄(working directory)是R用來讀取文件和保存結(jié)果的默認(rèn)目錄。我們可以使 用函數(shù)getwd()來查看當(dāng)前的工作目錄,或使用函數(shù)setwd()設(shè)定當(dāng)前的工作目錄。如果需要讀 入一個(gè)不在當(dāng)前工作目錄下的文件,則需在調(diào)用語句中寫明完整的路徑。記得使用引號閉合這些 目錄名和文件名。?
1、 建立一個(gè)R語言學(xué)習(xí)的工作空間
? ? ?首先自己建立一個(gè)文件夾,用來存放你的R工程項(xiàng)目目錄。
? ? ?建立? : G:\RWorkSpace\project1
setwd("G:/RWorkSpace/project1") options() options(digits = 3) x<-runif(20) summary(x) hist(x) savehistory() save.image() q()? ? ? ?首先,當(dāng)前工作目錄被設(shè)置為C:/myprojects/project1,當(dāng)前的選項(xiàng)設(shè)置情況將顯示出來,而 數(shù)字將被格式化,顯示為具有小數(shù)點(diǎn)后三位有效數(shù)字的格式。然后,我們創(chuàng)建了一個(gè)包含20個(gè)均 勻分布隨機(jī)變量的向量,生成了此數(shù)據(jù)的摘要統(tǒng)計(jì)量和直方圖。最后,命令的歷史記錄保存到文 件.Rhistory中,工作空間(包含向量x)保存到文件.RData中,會(huì)話結(jié)束。 注意setwd()命令的路徑中使用了正斜杠。R將反斜杠(\)作為一個(gè)轉(zhuǎn)義符。即使在Windows 平臺上運(yùn)行R,在路徑中也要使用正斜杠。同時(shí)注意,函數(shù)setwd()不會(huì)自動(dòng)創(chuàng)建一個(gè)不存在的 目錄。如果必要的話,可以使用函數(shù)dir.create()來創(chuàng)建新目錄,然后使用setwd()將工作目 錄指向這個(gè)新目錄。 在獨(dú)立的目錄中保存項(xiàng)目是一個(gè)好主意。我通常會(huì)在啟動(dòng)一個(gè)R會(huì)話時(shí)使用setwd()命令指 定到某一個(gè)項(xiàng)目的路徑,后接不加選項(xiàng)的load()命令。這樣做可以讓我從上一次會(huì)話結(jié)束的地 方重新開始,并保證各個(gè)項(xiàng)目之間的數(shù)據(jù)和設(shè)置互不干擾。在Windows和Mac OS X平臺上就更簡單了。跳轉(zhuǎn)到項(xiàng)目所在目錄并雙擊保存的鏡像文件即可。這樣做可以啟動(dòng)R,載入保存的工作空 間,并設(shè)置當(dāng)前工作目錄到這個(gè)文件夾中。?
四、輸入輸出
? ? ? ?啟動(dòng)R后將默認(rèn)開始一個(gè)交互式的會(huì)話,從鍵盤接受輸入并從屏幕進(jìn)行輸出。不過你也可以 處理寫在一個(gè)腳本文件(一個(gè)包含了R語句的文件)中的命令集并直接將結(jié)果輸出到多類目標(biāo)中。
 ?1. 輸入 函數(shù)source("filename")可在當(dāng)前會(huì)話中執(zhí)行一個(gè)腳本。如果文件名中不包含路徑,R將 假設(shè)此腳本在當(dāng)前工作目錄中。舉例來說,source("myscript.R")將執(zhí)行包含在文件 myscript.R中的R語句集合。依照慣例,腳本文件以.R作為擴(kuò)展名,不過這并不是必需的。
2. 文本輸出 函數(shù)sink("filename")將輸出重定向到文件filename中。默認(rèn)情況下,如果文件已經(jīng)存 在,則它的內(nèi)容將被覆蓋。使用參數(shù)append=TRUE可以將文本追加到文件后,而不是覆蓋它。 參數(shù)split=TRUE可將輸出同時(shí)發(fā)送到屏幕和輸出文件中。不加參數(shù)調(diào)用命令sink()將僅向屏幕 返回輸出結(jié)果。
3. 圖形輸出 雖然sink()可以重定向文本輸出,但它對圖形輸出沒有影響。要重定向圖形輸出,使用 列出的函數(shù)即可。最后使用dev.off()將輸出返回到終端。?
總結(jié)
                            
                        - 上一篇: LeetCode第 227 场周赛题解
 - 下一篇: flyme8会更新Android版本吗,