R語言入門-經(jīng)典PPT優(yōu)秀課件_第1頁
R語言入門-經(jīng)典PPT優(yōu)秀課件_第2頁
R語言入門-經(jīng)典PPT優(yōu)秀課件_第3頁
R語言入門-經(jīng)典PPT優(yōu)秀課件_第4頁
R語言入門-經(jīng)典PPT優(yōu)秀課件_第5頁
已閱讀5頁,還剩100頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、 語言入門 報(bào)告內(nèi)容 一 R簡介 二 函數(shù)與對象 三 編寫腳本 四 R繪圖 五 編寫函數(shù) 六 數(shù)據(jù)保存 一 R 簡 介 R語言的由來 o R語言是從S語言演變而來的。 o S語言是二十世紀(jì)70年代誕生于貝爾實(shí)驗(yàn)室,由Rick Becker, John Chambers, Allan Wilks開發(fā)。 o 基于S語言開發(fā)的商業(yè)軟件Splus,可以方便的編寫函數(shù)、 建立模型,具有良好的擴(kuò)展性,取得了巨大成功。 o 1995年由新西蘭Auckland大學(xué)統(tǒng)計(jì)系的Robert Gentleman 和Ross Ihaka,編寫了一種能執(zhí)行S語言的軟件,并將該 軟件的源代碼全部公開,這就是R軟件,其命令統(tǒng)

2、稱為R 語言。 R軟件簡介 R是開源軟件,代碼全部公開,對所有人免費(fèi)。 R可在多種操作系統(tǒng)下運(yùn)行,如Windows、MacOS、 多種Linux和UNIX等。 R需要輸入命令,可以編寫函數(shù)和腳本進(jìn)行批處理 運(yùn)算,語法簡單靈活。 目前在R網(wǎng)站上約有2100個(gè)程序包,涵蓋了基礎(chǔ)統(tǒng) 計(jì)學(xué)、社會(huì)學(xué)、經(jīng)濟(jì)學(xué)、生態(tài)學(xué)、地理學(xué)、醫(yī)學(xué)統(tǒng)計(jì) 學(xué)、生物信息學(xué)等諸多方面。 下載和安裝R The Comprehensive R Archive Network 簡稱CRAN,提供下載安裝程序和相應(yīng)軟件包。 R主頁 / Windows版本下載地址之一: http:/ftp.c

3、/mirrors/CRAN/bin/windows/base/ R-2.9.2-win32.exe 下載完成后,雙擊R-2.9.2-win32.exe 開始安裝。 一直點(diǎn)擊下一步,各選項(xiàng)默認(rèn)。 圖1 R軟件首頁 / 圖2 R登陸界面(Windows版) 路徑: 開始所有程序R 2.9.2 菜單欄菜單欄 快捷按鈕快捷按鈕 控制臺(tái)控制臺(tái) 命令行命令行 圖3 R Gui 的菜單介紹 練習(xí)一:下載和安裝R 下載并安裝R軟件 了解R的菜單 R程序包 為什么要安裝程序包?為什么要安裝程序包? 特定的分析功能,需要用相應(yīng)的程序包實(shí)現(xiàn)。 例如:系統(tǒng)發(fā)

4、育分析,往往要用到ape程序包,群落生態(tài) 學(xué)vegan包等等。 程序包是什么?程序包是什么? R程序包是多個(gè)函數(shù)的集合,具有詳細(xì)的說明和示例。 Window下的R程序包是已經(jīng)編譯好的zip包。 每個(gè)程序包包含R函數(shù)、數(shù)據(jù)、幫助文件、描述文件等。 常用R程序包 base- R 基礎(chǔ)功能包 stats- R統(tǒng)計(jì)學(xué)包 nlme- 線性及非線性混合效應(yīng)模型 Graphics- 繪圖 lattice- 柵格圖 ape- 系統(tǒng)發(fā)育與進(jìn)化分析 apTreeshape- 進(jìn)化樹分析 seqinr- DNA序列分析 ade4- 利用歐幾里得方法進(jìn)行生態(tài)學(xué)數(shù)據(jù)分析 常用R程序包 cluster- 聚類分析 eco

5、dist- 生態(tài)學(xué)數(shù)據(jù)相異性分析 mefa- 生態(tài)學(xué)和生物地理學(xué)多元數(shù)據(jù)處理 mgcv- 廣義加性模型相關(guān) mvpart- 多變量分解 nlme- 線性及非線性混合效應(yīng)模型 ouch- 系統(tǒng)發(fā)育比較 BiodiversityR - 基于Rcmdr的生物多樣性數(shù)據(jù)分析 vegan- 植物與植物群落的排序,生物多樣性計(jì)算 常用R程序包 maptools- 空間對象的讀取和處理 sp- 空間數(shù)據(jù)處理 spatstat- 空間點(diǎn)格局分析,模型擬合與檢驗(yàn) splancs- 空間與時(shí)空點(diǎn)格局分析 picante- 群落系統(tǒng)發(fā)育多樣性分析 圖4 CRAN Task Views: 對程序包的分類介紹 圖5 v

6、egan包頁面 R程序包 在CRAN 提供了每個(gè)包的源代碼和編譯好的MacOS、 Window下的程序包 以vegan包為例,CRAN提供了: Package source: vegan_1.15-3.tar.gz MacOS X binary: vegan_1.15-3.tgz Windows binary: vegan_1.15-3.zip Reference manual: vegan.pdf 等 Window平臺(tái)下程序包為zip文件,安裝時(shí)不要解壓縮不要解壓縮。 R程序包安裝 1 連網(wǎng)時(shí),用函數(shù)install.packages(), 選擇鏡像后,程序?qū)⒆詣?dòng)下載并安裝程序包。 例如: 打

7、開RGui,在控制臺(tái)中輸入 install.packages(“ape) 2 安裝本地zip包 路徑:Packagesinstall packages from local files 選擇光盤或者本地磁盤上存儲(chǔ)zip包的文件夾。 程序包使用 在控制臺(tái)中輸入如下命令: library(vegan) library(ade4) 調(diào)用程序包內(nèi)的函數(shù)與R R內(nèi)置的函數(shù)調(diào)用方法一樣 library(vegan) This is vegan 1.15-3 Warning message: package vegan was built under R version 2.9.1 練習(xí)二 安裝并導(dǎo)入程序包

8、 安裝程序包 程序包從本地zip文件安裝程序包 調(diào)用程序包 library(vegan) library(ape) 查看幫助文件 如何知道ape程序包內(nèi)部都有哪些函數(shù)? 最常用的方法: 1 菜單 幫助Html幫助 2 查看pdf幫助文檔(從程序包下載頁面下載) 查看幫助文件 1 help(t.test) 2 ?t.test 3 help.search(t.test) 4 apropos(t.test) 5 RGuiHelpHtml help 6 查看R包pdf手冊 幫助文件的內(nèi)容 以lm函數(shù)為例: lm(stats) #函數(shù)名及所在包 Fitting Linear Models # 標(biāo)題 De

9、scription #函數(shù)描述 Usage # 默認(rèn)選項(xiàng) Arguments # 參數(shù) Details # 詳情 Author(s) # 作者 References # 參考文獻(xiàn) Examples # 舉例 練習(xí)三 查看幫助文件 打開ape軟件包的幫助文件 library(ape) 查找ape包中plot.phylo函數(shù)的幫助 輸入輸入 ?plot.phylo 將其中的將其中的Example文件粘貼到文件粘貼到Console中,查看中,查看 運(yùn)行的結(jié)果。運(yùn)行的結(jié)果。 圖形界面之一:R Commander 圖6 R commander 界面 library(Rcmdr) 界面操作代碼 結(jié)果輸出

10、為什么要學(xué)習(xí)編程? 界面操作直觀易學(xué),但也存在一些不足: 操作的過程難以保存,數(shù)據(jù)處理不夠靈活, 在進(jìn)行步驟繁多的數(shù)據(jù)處理工作時(shí)十分費(fèi)時(shí)費(fèi) 力;在建立模型或自己編寫函數(shù)時(shí)也會(huì)遇到困 難。而這些困難可以通過編程解決。 學(xué)習(xí)R編程,首先要了解R的函數(shù)、對象及 其操作。 二 R函數(shù)與對象 數(shù)據(jù)表的行與列 物種數(shù)科數(shù)屬數(shù)海拔坡度類型 樣方140152260025山頂 樣方251122635030山坡 樣方346112039045山坡 樣方438122426020低地 樣方549102522033低地 行名Row names 字符串 列名 Column names 每列可看做帶名 稱的向量 表1 數(shù)據(jù)表

11、、數(shù)據(jù)框與向量 字符串、因素 每行 作為 一個(gè) Entry R的函數(shù) R是一種解釋性語言,不需要先編譯成.exe 文件,輸入后可直接運(yùn)行。 函數(shù)形式 function(對象,選項(xiàng)= ) 平均值 mean() 線性回歸 lm(yx, data=test) R處理的所有數(shù)據(jù)、變量、函數(shù)和結(jié)果都以對 象的形式保存。 R的函數(shù) 每一個(gè)函數(shù)執(zhí)行特定的功能,后面緊跟括號(hào),例如: 平均值 mean() 求和 sum() 繪圖 plot() 排序 sort() 除了基本的運(yùn)算之外,R的函數(shù)又分為高級(jí)和低級(jí) 函數(shù),高級(jí)函數(shù)內(nèi)部嵌套了復(fù)雜的低級(jí)函數(shù),例如 plot()是高級(jí)繪圖函數(shù),函數(shù)本身會(huì)根據(jù)數(shù)據(jù)的類型, 經(jīng)

12、過程序內(nèi)部的函數(shù)判別之后,繪制相應(yīng)類型的圖形, 并有大量的參數(shù)可選擇。 部分函數(shù) 計(jì)算計(jì)算 log(x) log10(x) exp(x) sin(x) cos(x) tan(x) asin(x) acos(x) min(x) max(x) range(x) length(x) 統(tǒng)計(jì)檢驗(yàn)統(tǒng)計(jì)檢驗(yàn) mean(x) sd(x) var(x) median(x) quantile(x,p) cor(x,y) t.test() lm(y x) wilcox.test() kruskal.test() 統(tǒng)計(jì)檢驗(yàn)統(tǒng)計(jì)檢驗(yàn) lm(y f+x) lm(y x1+x2+x3) bartlett.test bino

13、m.test fisher.test chisq.test glm(y x1+x2+x3, binomial) friedman.test . 圖7 箱線圖修飾前后(左:默認(rèn)值,右:修改屬性后) boxplot(count spray, data = InsectSprays) boxplot(count spray, data = InsectSprays, col = red) R函數(shù)調(diào)用及其選項(xiàng) R函數(shù)調(diào)用及其選項(xiàng) 函數(shù)的調(diào)用方法, 函數(shù)名+() 如 plot(), lm(),并 將對象放入括號(hào)中,“=”表示設(shè)定參數(shù)。例如: boxplot(daytype, data=bac, col=

14、“red“, xlab=“Virus”, ylab=“days”) daytype,以type為橫軸,day為縱軸繪制箱線圖。 data=bac 數(shù)據(jù)來源bac col=“red” 箱線圖為紅色 xlab=“Virus” 橫軸名稱為Virus ylab=“days” 縱軸名稱為days 練習(xí)四:查詢函數(shù)幫助 查看boxplot的幫助文件 ?boxplot 查看最后的examples 將幫助文件中的內(nèi)容粘貼到控制臺(tái)中,運(yùn)行并觀看運(yùn)行結(jié)果。 boxplot(count spray, data = InsectSprays, col = lightgray) 選項(xiàng)更改選項(xiàng)更改 boxplot(cou

15、nt spray, data = InsectSprays, col = “red”, xlab=“spray”, ylab=“counts”) 賦值與注釋 在控制臺(tái)中鍵入如下命令 2+2 a-2 代替 b-2 c-a+b c #注釋 賦值符號(hào) 為對象起名 R是區(qū)分大小區(qū)分大小寫的,A與a是不同的。 對象名不能用數(shù)字開頭,但是數(shù)字可以放在中間或 結(jié)尾。推薦用”.”作為間隔,例如 anova.result1。 舉例:一個(gè)向量a,包含了四個(gè)元素, a, , =, =, != 邏輯運(yùn)算 與、或、非 !, intake.prec(3,5,7) v - c(3,5,7);intake.prev inta

16、ke.pre1:5; intake.pre-c(3,5,7) 引用數(shù)據(jù)框中的元素 d 7000 1 FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE TRUE TRUE TRUE intake.preintake.pre 7000 intake.postintake.pre 7000 result-sqrt(z) ; result; 調(diào)用函數(shù): rcal(3,4) 練習(xí)十二 編寫函數(shù) 編寫一個(gè)函數(shù),給出兩個(gè)數(shù)之后,直接給出這兩個(gè)數(shù) 的平方和。 sqtest-function(x, y) z1=x2; z2=y2; z3=z1+z2; z3 六 數(shù)據(jù)的

17、保存 sink() unlink() 若有LaTeX基礎(chǔ),可以用 Sweave() 函數(shù) 該函數(shù)能將腳本、程序說明和運(yùn)算結(jié)果直接保存 成.tex文件,用LaTeX編譯成pdf文件。 數(shù)據(jù)保存 總 結(jié) oR是開源的統(tǒng)計(jì)繪圖軟件,也是一種自解釋的語是開源的統(tǒng)計(jì)繪圖軟件,也是一種自解釋的語 言,有大量的程序包可以利用。言,有大量的程序包可以利用。 oR中的向量、列表、數(shù)組、統(tǒng)計(jì)結(jié)果等都是對象,中的向量、列表、數(shù)組、統(tǒng)計(jì)結(jié)果等都是對象, 可以方便的生成所需對象,并進(jìn)行篩選??梢苑奖愕纳伤鑼ο?,并進(jìn)行篩選。 oR腳本是輸入的多個(gè)命令行。腳本是輸入的多個(gè)命令行。 oR具有精確控制的繪圖功能,生成的圖可

18、以另存具有精確控制的繪圖功能,生成的圖可以另存 為多種格式。為多種格式。 oR編寫函數(shù)無需聲明變量的類型,能利用循環(huán)、編寫函數(shù)無需聲明變量的類型,能利用循環(huán)、 條件語句,控制程序的流程。條件語句,控制程序的流程。 推薦教材 o Peter Dalgaard Introductory statistics with R o Crawley Statistics an introduction using R o E. Paradis R for Beginners o Verzani SimpleR. o D G Rossiter Introduction to the R Project for Statistical Computing for use at ITC o J. Maindonald Using R for data analysis and graphics introduction code and commentary using R o Venables, W. N. & Ripley, B. D. Modern

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論