![R語言與統(tǒng)計(jì)分析課件_第1頁](http://file4.renrendoc.com/view/33a8d0fbfdc1fc90e4ba800c94b30c50/33a8d0fbfdc1fc90e4ba800c94b30c501.gif)
![R語言與統(tǒng)計(jì)分析課件_第2頁](http://file4.renrendoc.com/view/33a8d0fbfdc1fc90e4ba800c94b30c50/33a8d0fbfdc1fc90e4ba800c94b30c502.gif)
![R語言與統(tǒng)計(jì)分析課件_第3頁](http://file4.renrendoc.com/view/33a8d0fbfdc1fc90e4ba800c94b30c50/33a8d0fbfdc1fc90e4ba800c94b30c503.gif)
![R語言與統(tǒng)計(jì)分析課件_第4頁](http://file4.renrendoc.com/view/33a8d0fbfdc1fc90e4ba800c94b30c50/33a8d0fbfdc1fc90e4ba800c94b30c504.gif)
![R語言與統(tǒng)計(jì)分析課件_第5頁](http://file4.renrendoc.com/view/33a8d0fbfdc1fc90e4ba800c94b30c50/33a8d0fbfdc1fc90e4ba800c94b30c505.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
R語言—介紹1R介紹為什么要學(xué)習(xí)R語言R的資源資料與文獻(xiàn)網(wǎng)站統(tǒng)計(jì)分析軟件包R的運(yùn)行平臺(tái)R_GUIR_CommanderR_WinEdtR_ESS+XEmacs2語言/軟件使用示例JohnVerzani,SimpleR–UsingRforIntroductoryStatistics,2002
J.H.Maindonald,UsingRforDataAnalysisandGraphics–AnIntroduction,2001JulianJ.Faraway,PracticalRegressionandANOVAUingR,2002
快速入門:stat500/introR.html
S.Chatterjee,A.S.Hadi&B.Price,RegressionAnalysisbyExample,3rdEd.,JohnWiley&Sons,2000
(印影版,中國(guó)統(tǒng)計(jì)出版社,2003)3為什么要學(xué)習(xí)R語言R是一個(gè)開放(GPL)的統(tǒng)計(jì)編程環(huán)境一種語言,是S語言(由AT&TBell實(shí)驗(yàn)室的RickBecker,JohnChambers,AllanWilks開發(fā))的一種方言(dialect)之一,另一則為S-plus.一種軟件,是集統(tǒng)計(jì)分析與圖形直觀顯示于一體的統(tǒng)計(jì)分析R作為一個(gè)計(jì)劃(project),最早(1995年)是由Auckland大學(xué)統(tǒng)計(jì)系的RobertGentleman和RossIhaka開始編制,目前由R核心開發(fā)小組(RDevelopmentCoreTeam–以后用RDCT表示)維護(hù),他們完全自愿、工作努力負(fù)責(zé),并將全球優(yōu)秀的統(tǒng)計(jì)應(yīng)用軟件打包提供給我們。我們可以通過R計(jì)劃的網(wǎng)站()了解有關(guān)R的最新信息和使用說明,得到最新版本的R軟件和基于R的應(yīng)用統(tǒng)計(jì)軟件包.5R是完全免費(fèi)的??!而S-Plus盡管是非常優(yōu)秀的統(tǒng)計(jì)分析軟件,可是你需要支付一筆$US.R可以在運(yùn)行于UNIX,Windows和Macintosh的操作系統(tǒng)上.R嵌入了一個(gè)非常實(shí)用的幫助系統(tǒng).R具有很強(qiáng)的作圖能力.我們將R程序容易地移植到S-Plus程序中,反之S的許多過程直接或稍作修改用于R.通過R語言的許多內(nèi)嵌統(tǒng)計(jì)函數(shù),很容易學(xué)習(xí)和掌握R語言的語法.我們可以編制自己的函數(shù)來擴(kuò)展現(xiàn)有的R語言(這就是為什么它在不斷等級(jí)完善!!)…....6網(wǎng)站—R的資源R主頁:CRAN(ComprehensiveRArchiveNetwork),
CRAN的鏡像站點(diǎn)
UCLA提供的關(guān)于R與S-Plus的聯(lián)接,具有搜索功能
李東風(fēng)主頁提供了R的Windows版本
如果使用FTP軟件(如Cuteftp)則推薦使用(匿名訪問)
7參考資料
隨軟件所附pdf文檔(help->manuals),隨版本更新:W.N.Venables,D.M.SmithandtheRDCT:IntroductiontoR--NotesonR:AProgrammingEnvironmentforDataAnalysisandGraphics,2003.
RDCT,TheREnvironmentforStatisticalComputingandGraphics--ReferenceIndex,2003.RDCT,RDataImport/Export,2003.RDCT,RLanguageDefinition,2003RDCT,WritingRExtensions,20039KurtHornik,RFAQ,Version1.8-1,2003-10-07B.D.Ripley,
RforWindowsFAQ,Versionforrw1080RHtmlHelp,StatisticalDataAnalysis
其它PDF/HTML文件:KickstartingR,Lemon-kickstart/Rexamples,AlisonGibbs,Winter04/Sta248/Rex.html
10*Ko-KangWang,IntroductiontoRforStatisticians,2004J.H.Maindonald,UsingRforDataAnalysisandGraphics–AnIntroduction,2001J.H.Maindonald,UsingS-PLUSforDataAnalysisandGraphics,2001EmmanuelParadis,RforbeginnersJonathanBaron,RreferencecardBretLarget,RforIntroductoryStatistics,2002W.N.VenablesandB.D.Ripley,ModernAppliedStatisticswithS,4thEd.,2002
11R的運(yùn)行平臺(tái)-1R_GUI啟動(dòng)R,我們看到RGUI(graphicuser’sinterface)的主窗口,它由三部分組成主菜單工具條Rconsole(R的運(yùn)行窗口)Rconsole你的主要工作是在這里通過發(fā)布命令來完成的,包括數(shù)據(jù)集的建立,數(shù)據(jù)的分析,作圖等.在這里你可以得到在線幫助help.start()HTML格式的關(guān)于R的幫助文件help()得到相應(yīng)函數(shù)的幫助,例如help(plot)demo()得到R提供的幾個(gè)示例q()退出R同Matlab類似,用右shift鍵可以重現(xiàn)以前的命令13工具條介紹SourceRcodeLoadimageSaveimageCopyandPasteStopcurrentcomputationSourceRcode
執(zhí)行R文件(*.R或*.r)Saveimage
保存工作空間,文件名為*.RDataLoadimage
打開已有的工作空間Stopcurrentcomputation 中止當(dāng)前計(jì)算(由于超時(shí)等原因)14主菜單介紹1517功能RCommander是一個(gè)交互式菜單/對(duì)話框系統(tǒng)(menu/dialog-boxinterfaces),用于進(jìn)行數(shù)據(jù)的讀、寫、轉(zhuǎn)換及常用的統(tǒng)計(jì)分析.作者還添加了線性與廣義線性模型等統(tǒng)計(jì)分析工具.結(jié)構(gòu)與使用(具體見Rcmdr的GettingStarted部分)RCommander窗口由一些菜單及按鈕組成.菜單的下方是一個(gè)log/script窗口通過菜單的對(duì)話框?qū)⒚畎l(fā)送到RGUI中,以完成某一項(xiàng)統(tǒng)計(jì)分析.這些命令同時(shí)在log窗口中顯示出來.它們可以被重新編輯修改,并可通過Rcmdr窗口右下角的Submit按鈕再一次發(fā)送給R執(zhí)行命令指向一個(gè)當(dāng)前的或者活動(dòng)的數(shù)據(jù)集.一旦讀入一個(gè)新的數(shù)據(jù)集,它就是活動(dòng)的.注:通過Data=>Importdata加載數(shù)據(jù)集,其名字及路徑不能含有中文,而中RGUI中是允許的!!18RCommander的菜單
RCommander菜單樹(MenuTree)(點(diǎn)擊)RCommander的信息反饋(informationfield)
19R_WinEdt的設(shè)置設(shè)置桌面快擊鍵:為了同時(shí)可以使用LaTeX/CTeX和R_WinEdt,在桌面上復(fù)制一個(gè)WinEdt快擊鍵,并命名為R_WinEdt;右擊R_WinEdt快擊鍵,選擇屬性,然后在“目標(biāo)(T)”中輸入C:\CTeX\WinEdt\WinEdt-C="R-WinEdt"-e=r.ini(并不必須)如果每次運(yùn)行R都想加載某個(gè)/些軟件包或函數(shù),則可對(duì)R主目錄下etc下的.Rprofile進(jìn)行修改,如每次加載simple宏包就可使用下面的設(shè)置library(simple)options(editor="\"c:/program\"-c=\"R-WinEdt-edit\"-e=r.ini-V")21R_WinEdt界面22R_WinEdt菜單23R_WinEdt–菜單與熱鍵#CommandHotKeyMenuIcon說明#------------------------------------------------------------------------------------------------------#BracketsCheckCtrl+F12{}括號(hào)配對(duì)檢查#RHistory ALT+HRHIST.保存歷史記錄#R-line-andgo ALT+L單行發(fā)送#R-line Ctrl+ALT+L 單行發(fā)送并返回#R<-R-paste-andgoALT+PR<-PASTE選中后發(fā)送#R<-R-paste Ctrl+ALT+P 選中后發(fā)送并返回#R<-R-source-andgoALT+SR<-SOURCER文件發(fā)送(先打開)#R<-R-scriptCtrl+ALT+SRSCRIPTR文件發(fā)送并返回#function Ctrl+Alt+F生成函數(shù)框架#for Ctrl+Alt+O生成for循環(huán)框架#if Ctrl+Alt+I生成if框架#ifelse Ctrl+Alt+E生成ifesle框架#<- Ctrl+-生成賦值符號(hào)25R的運(yùn)行平臺(tái)-4R_ESS+XEmacs–安裝與使用(作者:JohnFox)關(guān)于ESS與XEmacsEmacs是一個(gè)功能強(qiáng)大廣為使用的編程器,可以進(jìn)行配對(duì)檢查,語法高亮顯示,查錯(cuò)(debugging)等.
ForsomeUnix/Linuxusers,Emacsismoreawayoflifethananeditor.ESS(EmacsSpeaksStatistics)可以為許多統(tǒng)計(jì)軟件定制相應(yīng)的編程環(huán)境,包括R,S-Pplus,SAS,Stata,Lisp-Stat等.Emacs主要有二個(gè)版本:GNUEmacs和XEmacs.由于使用了ESS,因此多個(gè)統(tǒng)計(jì)分析軟件可并存于同一平臺(tái).JohnFox的ESS設(shè)置提供了一個(gè)主窗口,上下二個(gè)子窗口:上面的用于輸入R的源文件/代碼,下面的用于顯示這些R程序/代碼在XEmacs運(yùn)行后的輸入與輸出結(jié)果.(點(diǎn)擊此處查看)XEmacs和ESS均是免費(fèi)的!26XEmacsNetinstaller---InstallfromtheInternetPleasenotethatthesescreenshotsdonotcontainthelatestversionnumbersforXEmacs,itspackagesandtheinstalleritself.Theyaremeanttogiveyouageneralideaofwhatthedownload/installationprocesswilllooklike.Anoverviewofexistingpackagesandtheirpurposemaybefoundat
andundertheXEmacssourcetreeinetc/PACKAGES.注:請(qǐng)選擇Native類型(這是Windows版的Xemacs)各站點(diǎn)的安裝或下載速度以及版本號(hào)有所不同.去掉宏包,點(diǎn)一下New一欄下對(duì)應(yīng)的版本號(hào);此版本號(hào)即被Skip所代替.29R_ESS+XEmacs的設(shè)置我們假定R與XEmacs的目錄分別為R:C:\ProgramFiles\R\rwxxxx\(xxxx為版本號(hào))Xemacs:C:\ProgramFiles\Xemacs檢查系統(tǒng)的home目錄(WinXP/2000/NT下可在DOS方式下用命令setHOME檢查.在此假定為c:\在home目錄下建立子目錄(用DOS命令mkdir).xemacs從JohnFox的主頁下載設(shè)置文件fox-ess-config.zip,地址為:
將解壓文件init.el改名為Rinit.el并復(fù)制到.xemacs下30將解壓文件function.xpm,line.xpm,para.xpm,region.xpm,source.xpm和stop.xpm復(fù)制到目錄c:\ProgramFiles\Xemacs\XEmacs-xx.y.z\etc\toolbar\(xx.y.z為Xemacs的版本號(hào)),由此在Xemacs中建立R的工具條.(若沒有)添加系統(tǒng)搜索路徑:c:\ProgramFiles\R\rwxxxx\bin(在WinXP/2000/NT中可由控制面板=>系統(tǒng)=>高級(jí)=>環(huán)境變量中新建/添加).另一方法:用純文本修改文件Rini.el中的關(guān)于R的搜索,即(setq-defaultinferior-R-program-name“c:/ProgramFiles/rwxxxx/bin/rterm.exe”)----也即只要去掉之前的分號(hào)(;).修改桌面圖標(biāo)XEmacs的屬性:在快捷方式的”目標(biāo)”下添加
-q-l“c:\.xemacs\Rinit.el“,在”起始位置”添加存放文件的目錄.31ESS+XEmacs下R的使用---了解XEmacs視窗不是問題的問題:每次打開R_XEmacs可能會(huì)彈出信息“Initializationcomplete”,只要點(diǎn)擊OK鍵就行了.安裝后初次使用會(huì)在屏幕的底部(“minibuffer”中)出現(xiàn)當(dāng)前窗口無法打開.Rhistory的信息.此記錄歷史命令的文件會(huì)在正常退出R與ESS時(shí)建立(但只在下面窗口>提示符后直接輸入一個(gè)或多個(gè)命令后!)3233視窗介紹JohnFox將Xemacs主窗口(實(shí)際上稱為frame)分為二個(gè)子窗口,上下分開(見上圖所示).在Xemacs主窗口的上方還有一個(gè)菜單條(menubar)和一個(gè)工具條(toolbar),其內(nèi)容會(huì)隨緩沖區(qū)(buffer)主模式(majormode)而變化.你可以通過光標(biāo)在上下子窗口中轉(zhuǎn)換觀察菜單與工具條的變化.J.Fox為R提供了專門的工具條與菜單,非常便于使用(后面介紹).上面的子窗口顯示*scratch*緩沖區(qū),其中你可以輸入R命令.顧名思義,*scratch*緩沖并非永久性的,當(dāng)然你可以將其內(nèi)容保存在文件中.下面的子窗口顯示R經(jīng)Emacs運(yùn)行的結(jié)果,在此緩沖區(qū)中你也可以直接輸入R命令.34每一子窗口下均有一個(gè)模式行(modeline),顯示的緩沖的狀態(tài),其中包括:1)緩沖的名字2)緩沖的主模式(或次模式)3)窗口在緩沖中的位置.上面的子窗口包含*scratch*buffer,處于ESS[S]主模式(主模式由文件的擴(kuò)展名所決定.S指S語言,當(dāng)打開擴(kuò)展名為.r,.R,.s,.S,.q的S語言源代碼時(shí),均處于ESS[S]主模式中),顯示所有(ALL)緩沖內(nèi)容—現(xiàn)在是空的.下面的子窗口包含*R*buffer,處在iESS(inferiorESS–之所以你它是inferior,因?yàn)樗鞘蹺macs控制的!),目前處在緩沖的底部(Bot).你可以滑動(dòng)游標(biāo)觀察其位置的變化.指針(point):Emacs的光標(biāo),它與通常的光標(biāo)還是有所差異,不過JohnFox在ESS模式下按Windows的習(xí)慣進(jìn)行了修改.在窗口的下方是一個(gè)單行的小窗口,稱為minibuffer(小緩沖),主要用于信息顯示,其次若你要輸入Emacs命令,它們會(huì)顯示在minibuffer中,最后一命令(如搜索和替換)的響應(yīng)在此完成.35ESS+XEmacs下R的使用---R_XEmacs視窗PastetoR(粘貼至R)按鈕---將上面子窗口中的命令送到下面子窗口中執(zhí)行Pasteline執(zhí)行光標(biāo)所在行Pasteparagraph執(zhí)行光標(biāo)所在段落(其中不含空行)
Pastefunction執(zhí)行已定義的光標(biāo)所在的函數(shù)Pasteregion執(zhí)行用鼠標(biāo)標(biāo)記的區(qū)域SourcetoR執(zhí)行上面子窗口(緩沖區(qū))中的所有命令對(duì)于R源文件在執(zhí)行之前會(huì)重新保存更新的代碼對(duì)于*scratch*buffer中的代碼保存后才能執(zhí)行(不同于前的幾種方式)R文件中的源代碼的執(zhí)行過程不在下面的子窗口中顯示出來!注意:首次使用會(huì)在minibuffer中出現(xiàn)Processtoloadinto:R,按回車鍵繼續(xù)
Stop中止當(dāng)前計(jì)算(如由于超時(shí))36R子菜單如果光標(biāo)/指針須在R的源文件中,則會(huì)出現(xiàn)ESS菜單,進(jìn)行ESS會(huì)出現(xiàn)JohnFox特地為R設(shè)計(jì)的R子菜單.R子菜單本身包括三個(gè)子菜單File文件Packages宏包Misc其它它們的功能與RGUI的類似37ESS=>R=>File菜單SourceRcode…打開對(duì)話框以選擇源文件Saveworkspace…
將R的工作空間存入文件Loadworkspace…
加載保存的工作空間ChangeRdirectory…
改變工作空間(指R運(yùn)行過程空間,
并非指上面子窗口的源文件目錄)38ESS=>R=>packages菜單Loadpackage…
加載R宏包,納入搜索目錄InstallpackagefromCRAN…
從CRAN處選擇.下載.安裝宏包(需要internet連接!)Installpackagefromlocalzipfile…
從本地計(jì)算機(jī)或網(wǎng)絡(luò)宏包(zip壓縮文件)UpdatepackagesfromCRAN…
從CRAN處更新宏包–搜索所有安裝宏包的新版本,
下載并安裝39ESS=>R=>Misc菜單Removeallobjects…刪除R工件空間中所有的對(duì)象Listobjects…
列出R工作空間中的對(duì)象Displaypath…
列出R的搜索路徑File=>ExitR/Xemacs菜單QuitsavingRworkspace
在當(dāng)前的R目錄中保存工作空間Justquit不保存R工作空間直接退出R,系統(tǒng)會(huì)
提醒你是否真的不保存修改的緩沖40R的語法與數(shù)據(jù)結(jié)構(gòu)語法符號(hào)>命令或運(yùn)算提示符+續(xù)行符基本算術(shù)運(yùn)算+ 加號(hào)-減號(hào)* 乘號(hào)/ 除號(hào)^ 乘方賦值符=或<-41求助符?help()例子:>3+5>3-5>3/5>3^5>x=5>?plot>help(plot)42向量向量是R中最為基本的類型一個(gè)向量中元素的類型必須相同,包括數(shù)值型整型單精度實(shí)型雙精度實(shí)型邏輯型復(fù)值型字符型43建立向量的方法(函數(shù))seq()或:若向量(序列)具有較為簡(jiǎn)單的規(guī)律rep()若向量(序列)具有較為復(fù)雜的規(guī)律c()若向量(序列)沒有什么規(guī)律例子:>1:10>seq(1,10,by=0.5)>seq(1,10,length=21)>rep(2:5,2)>rep(2:5,rep(2,4))>x=c(42,7,64,9)>length(x)44向量運(yùn)算中的循環(huán)法則(recyclingrule)>1:2+1:4>1:4+1:745向量的下標(biāo)(index)與向量子集(元素)的提取正的下標(biāo)提取向量中對(duì)應(yīng)的元素負(fù)的下標(biāo)去掉向量中對(duì)應(yīng)的元素邏輯運(yùn)算提出向量中元素的值滿足條件的元素注:R中向量的下標(biāo)從1開始,這與通常的統(tǒng)計(jì)或數(shù)學(xué)軟件一致而象C語言等計(jì)算機(jī)高級(jí)語言的向量下標(biāo)則從0開始!例子:>x=c(42,7,64,9)>x[1]>x[-2]>x[c(1,4)]46>x>10 #值大于10的元素邏輯值[1]TRUEFALSETRUEFALSE>x[x>10]#值大于10的元素[1]4264>x[x<40&x>10]>#產(chǎn)生(0,1)上100個(gè)均勻分布隨機(jī)數(shù)>y=runif(100,min=0,max=1)>sum(y<0.5)#值小于0.5的元素的個(gè)數(shù)[1]47>sum(y[y<0.5])#值小于0.5的元素的值的和[1]10.8476747數(shù)據(jù)框架(dataframe)許多數(shù)據(jù)集是數(shù)據(jù)框架的形式出現(xiàn)一個(gè)數(shù)據(jù)框架就是將許多向量組合起來的一個(gè)對(duì)象,它是二維的,通常其列表示變量,其行表示觀測(cè)。建立數(shù)據(jù)框架的方法(函數(shù))若你的數(shù)據(jù)本身保存在一個(gè)文件中,則可以使用read.table()僅接受帶有分界符的ASCII數(shù)據(jù)如果數(shù)據(jù)是電子報(bào)表的形式,則采用下面的兩種變型read.csv()先將數(shù)據(jù)另存為帶逗號(hào)的數(shù)據(jù)(Comma
Seperatedvalues)read.delim()先將數(shù)據(jù)另存為用tab作為分界符的數(shù)據(jù)注:若數(shù)據(jù)集很大(如1,000,000觀測(cè)x200變量),則可由
ODBC聯(lián)接由數(shù)據(jù)庫讀入.48若你在R中建立了一些向量并試圖想由它們生成框架,則可以使用data.frame(),但需要同時(shí)cbind().例子:>x=c(42,7,64,9)>y=1:4>z.df=data.frame(cbind(INDEX=y,VALUE=x))>z.df INDEX VALUE1 1 422 2 73 3 644 4 9注.df只是為了提醒自己z.df是一個(gè)數(shù)據(jù)框架
INDEX和VALUE是重新命名的向量名字49數(shù)據(jù)框架子集的提出取格式foo[row,column]
其中foo 數(shù)據(jù)框架的名稱
row 需要提出取的行號(hào)
column需要提出取的行號(hào)例子(續(xù)上一例)
>z.df[1,]#提取第一個(gè)觀測(cè)(第一行)INDEXVALUE1142>z.df[,1]#提取第一列(第一個(gè)變量的值)[1]1234>z.df[2,1]#提取第二行第一列的元素[1]250列表(list)復(fù)雜的數(shù)據(jù)分析時(shí),僅有向量與數(shù)據(jù)框架還不夠有時(shí)需要生成包含不同類型的對(duì)象R的列表(list)就是包含任何類型的對(duì)象例子:>foo=list(x=1:6,y=matrix(1:4,nrow=2))>foo$x[1]123456$y[,1][,2][1,]13[2,]2451列表子集的提出取提取一個(gè)子對(duì)象如foo的x,下面三種方式等價(jià)
>foo$x
>foo[1]
>foo[[1]]
例子>foo$y>foo[2]>foo[[2]]>foo[[1]][2]>foo$y[2]>foo$y[4]52條件語句作用:避免除零或負(fù)數(shù)的對(duì)數(shù)等數(shù)學(xué)問題形式1:
if(條件)表達(dá)式1else表達(dá)式2形式2–常優(yōu)于形式1!
ifelse(條件,yes,no)試比較下面的三個(gè)結(jié)果:
>x=c(6:-4)>sqrt(ifelse(x>=0,x,NA))>ifelse(x>=0,sqrt(x),NA)>if(x>=0)sqrt(x)elseNA53循環(huán)(loops)for()#若知道終止條件
for(變量in向量)表達(dá)式while()#若無法知道運(yùn)行次數(shù)
while(條件)表達(dá)式兩者通常可以轉(zhuǎn)換
例1—試比較兩種方法
>for(iin1:5)print(1:i)
>i=1
>while(i<=5){
+print(1:i)
+i=i+1
+}54例2–見Ko-KangWang’s“RProgrammingWorkshop”,pp6-8SupposewegenerateapseudoDNAmicroarrayandwewanttodoanANOVAonit.FirstwegeneratesomefactorsforArray(a),Treatments(t)andGenes(g).Thengeneratesomenormalrandomnumbersfortheloggedforegroundintensity.Thenweputintoanaov()functionforeachgene–thisiswheretheloopisgoodfor.Notethatyouwillgetdifferentanswerwhenyoutryit,becauseoftherandomnumbersgenerated.程序如下(使用for循環(huán),也可改用while循環(huán)):DNA_anova.R
注:R控制面板中顯示符號(hào)>和+,而源程序中是不需要的!55 >n=3044 >a=c(rep(1,2*n),rep(2,2*n)) >t=c(rep(1,n),rep(2,n),rep(2,n),rep(1,n)) >g=rep(rep(1:1522,rep(2,1522)),4) >y=rnorm(4*n,mean=4.13,sd=0.75) >ybar=data.frame(A=factor(a),G=factor(g), + T=factor(t),Intensity=y) >attach(ybar) >ybar[1:10,]#查看ybar的前10行 >res.mat=matrix(0,1522,8,byrow=TRUE) >coef.mat=matrix(0,1522,4,byrow=TRUE) >for(iin1:1522){ + gene.aov=aov(Intensity~A+T+A*T, +sub=G==i) +res.mat[i,]=residuals(gene.aov)#保存ANOVA分析的殘差 +coef.mat[i,]=coef(gene.aov)#保存ANOVA分析的方差系數(shù) +} >res.mat[1:10,] #查看殘差的前10行>coef.mat[1:10,] #查看方差系數(shù)的前10行56向量化(vectorization)循環(huán)(loops)很有用,但如果能將一組命令向量化,則應(yīng)盡量避免循環(huán),原因在于C是一種編譯語言,其效率是很高的;R則是一種解釋語言。在計(jì)算時(shí),通常C要比R快100倍。在R中充分使用向量化,因?yàn)镽會(huì)立即調(diào)用C進(jìn)行運(yùn)算,因而大大提高計(jì)算的效率!例子-–-見Ko-KangWang’s“RProgrammingWorkshop”,pp9-11(Gamma函數(shù)作圖)Vector_1.R沒有使用向量和循環(huán)的源程序Vector_2.R使用for循環(huán)改進(jìn)后的源程序Vector_3.R使用向量化后源程序57函數(shù)函數(shù)是一系列語句的組合,在R中可以寫出自己的函數(shù)形式:變量名=function(變量列表)函數(shù)體函數(shù)引用:變量名(變量的值)函數(shù)可以遞歸引用,但不提倡!例子–使用gamma函數(shù)求n!
>factorial=function(n){+if(n>=0)gamma(n+1)+elseprint(“Pleaseinputapositiveinteger!")+}>factorial(6)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年股權(quán)投資基金股權(quán)轉(zhuǎn)讓及退出合同
- 2025年度熱力管道設(shè)計(jì)與施工合同模板
- 二零二五年度外貿(mào)業(yè)務(wù)員勞動(dòng)合同模板
- 2025年智慧社區(qū)產(chǎn)權(quán)車位買賣及物業(yè)管理服務(wù)合同4篇
- 2025年度人力資源合同管理及員工關(guān)系處理
- 二零二五年度產(chǎn)業(yè)園智能倉儲(chǔ)系統(tǒng)施工建設(shè)合同4篇
- 2025年度焊接設(shè)備租賃與操作培訓(xùn)合同-@-1
- 二零二五版儲(chǔ)油罐拆除工程安全培訓(xùn)及操作規(guī)程合同3篇
- 二零二五年度煤礦安全生產(chǎn)技術(shù)咨詢合同
- 2025年度精密管件批量購銷合同
- 《openEuler操作系統(tǒng)》考試復(fù)習(xí)題庫(含答案)
- 北師大版五年級(jí)上冊(cè)數(shù)學(xué)期末測(cè)試卷及答案共5套
- 2024-2025學(xué)年人教版生物八年級(jí)上冊(cè)期末綜合測(cè)試卷
- 2025年九省聯(lián)考新高考 語文試卷(含答案解析)
- 全過程工程咨詢投標(biāo)方案(技術(shù)方案)
- 心理健康教育學(xué)情分析報(bào)告
- 安宮牛黃丸的培訓(xùn)
- 婦科腫瘤護(hù)理新進(jìn)展Ppt
- 高三(10)班下學(xué)期家長(zhǎng)會(huì)
- 中國(guó)酒文化 酒文化介紹 酒的禮俗 中國(guó)風(fēng)PPT模板
- 山西省原平市高鋁土實(shí)業(yè)有限公司鋁土礦資源開發(fā)利用、地質(zhì)環(huán)境保護(hù)與土地復(fù)墾方案
評(píng)論
0/150
提交評(píng)論