列表與數(shù)據(jù)框_第1頁(yè)
列表與數(shù)據(jù)框_第2頁(yè)
列表與數(shù)據(jù)框_第3頁(yè)
列表與數(shù)據(jù)框_第4頁(yè)
列表與數(shù)據(jù)框_第5頁(yè)
已閱讀5頁(yè),還剩18頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、列表與數(shù)據(jù)框列表與數(shù)據(jù)框 復(fù)合型數(shù)據(jù) 列表(list) 列表是一種特別的對(duì)象集合,它的元素也由序號(hào)(下標(biāo))區(qū)分,但是各元素的類型可以是任意對(duì)象,不同元素不必是同一類型.元素本身允許是其它復(fù)雜數(shù)據(jù)類型,。列表的構(gòu)造與訪問 LstLst2 另一種格式是“列表名$元素名”,如 Lst$name 數(shù)據(jù)框(data.frame) 數(shù)據(jù)框是R的一種數(shù)據(jù)結(jié)構(gòu).它通常是矩陣形式的數(shù)據(jù),但矩陣各列可以是不同類型的.數(shù)據(jù)框每列是一個(gè)變量,每行是一個(gè)觀測(cè). 數(shù)據(jù)框是一種特殊的列表對(duì)象,有一個(gè)值為“data.frame”的class屬性,各列表成員必須是向量(數(shù)值型、字符型、邏輯型)、因子、數(shù)值型矩陣、列表,或其它數(shù)

2、據(jù)框。 一般還是可以把數(shù)據(jù)框看作是一種推廣了的矩陣,它可以用矩陣形式顯示,可以用對(duì)矩陣的下標(biāo)引用方法來(lái)引用其元素或子集. 數(shù)據(jù)框的生成 數(shù)據(jù)框可以用data. frame ()函數(shù)生成,其用法與list()函數(shù)相同,各自變量變成數(shù)據(jù)框的成分,自變量可以命名,成為變量名.例如 dfattach(df) rdf$rxnew-edit(xold) 其中其中xold是原列表或數(shù)據(jù)框圖,是原列表或數(shù)據(jù)框圖,xnew是修改后的是修改后的列表或數(shù)據(jù)框列表或數(shù)據(jù)框.注意注意:原數(shù)據(jù)原數(shù)據(jù)xold并沒有改動(dòng),改并沒有改動(dòng),改動(dòng)的數(shù)據(jù)存放在動(dòng)的數(shù)據(jù)存放在xnew中中. 函數(shù)函數(shù)edit( )也可以對(duì)向量,數(shù)組或矩

3、陣類型的數(shù)也可以對(duì)向量,數(shù)組或矩陣類型的數(shù)據(jù)進(jìn)行修改或編輯據(jù)進(jìn)行修改或編輯讀、寫數(shù)據(jù)文件讀、寫數(shù)據(jù)文件 對(duì)于大量數(shù)據(jù)和變量,可在其他軟件中輸對(duì)于大量數(shù)據(jù)和變量,可在其他軟件中輸入入(或數(shù)據(jù)來(lái)源是其他軟件的輸出結(jié)果或數(shù)據(jù)來(lái)源是其他軟件的輸出結(jié)果),再,再讀到讀到R中處理中處理.R軟件有多種讀數(shù)據(jù)文件的方軟件有多種讀數(shù)據(jù)文件的方法法. 另外,所有的計(jì)算結(jié)果也可保存在文件另外,所有的計(jì)算結(jié)果也可保存在文件中,以備使用。中,以備使用。讀純文本文件讀純文本文件 讀純文本文件有兩個(gè)函數(shù),一個(gè)是讀純文本文件有兩個(gè)函數(shù),一個(gè)是read.table()函函數(shù),另一個(gè)是數(shù),另一個(gè)是scan()函數(shù)函數(shù). read

4、.table()函數(shù)是讀表格形式的文件()函數(shù)是讀表格形式的文件. 利用利用read.table()函數(shù)可表格形式的文函數(shù)可表格形式的文本本數(shù)據(jù),如數(shù)據(jù),如 rt-read.table(houses.data,header=TRUE) rtrc data dataxswitch(x,2+2,mean(1:10),rnorm(4) 10.8927328-0.7827752 1.0772888 1.0632371 switch(2,2+2,mean(1:10),rnorm(4) 15.5 switch(6,2+2,mean(1:10),rnorm(4) NULL 當(dāng)當(dāng)list是有名定義時(shí),是有名定

5、義時(shí),statement等于變量名時(shí),返回變量等于變量名時(shí),返回變量名對(duì)應(yīng)的值名對(duì)應(yīng)的值;否則返回否則返回“NULL值值.例如,例如, yswitch(y,fruit=banana,vegetable=broccoli,meat=beef) 1“banana”中止語(yǔ)句與空語(yǔ)句中止語(yǔ)句與空語(yǔ)句 中止語(yǔ)句中止語(yǔ)句break語(yǔ)句,語(yǔ)句,break語(yǔ)句的作用是語(yǔ)句的作用是中止循環(huán),使程序跳到循環(huán)以外中止循環(huán),使程序跳到循環(huán)以外. 空語(yǔ)句是空語(yǔ)句是next語(yǔ)句,語(yǔ)句,next語(yǔ)句是繼續(xù)執(zhí)行,語(yǔ)句是繼續(xù)執(zhí)行,而不執(zhí)行某個(gè)實(shí)質(zhì)性的內(nèi)容而不執(zhí)行某個(gè)實(shí)質(zhì)性的內(nèi)容. 關(guān)于關(guān)于break語(yǔ)句和語(yǔ)句和next語(yǔ)句的例

6、子,將結(jié)合語(yǔ)句的例子,將結(jié)合循環(huán)語(yǔ)句來(lái)說明循環(huán)語(yǔ)句來(lái)說明.for循環(huán)語(yǔ)句循環(huán)語(yǔ)句 for循環(huán)的格式為循環(huán)的格式為 for (name in expr_1) expr_2 其中其中name是循環(huán)變量,是循環(huán)變量,expr_1是一個(gè)向量是一個(gè)向量表達(dá)式表達(dá)式(通常是個(gè)序列,如通常是個(gè)序列,如1:20),expr_2通通常是一組表達(dá)式常是一組表達(dá)式.for循環(huán)示例循環(huán)示例 如構(gòu)造一個(gè)如構(gòu)造一個(gè)4階的階的Hilbert=(hij)矩陣,矩陣,其中其中 hij=1/(i+j-1) n-4;x-array(0,dim=c(n,n) for(i in 1:n) for(j in 1:n) xi,j-1/(i

7、+j-1) xwhile循環(huán)語(yǔ)句循環(huán)語(yǔ)句 while循環(huán)語(yǔ)句的格式為循環(huán)語(yǔ)句的格式為 while (condition) expr 當(dāng)條件當(dāng)條件condition成立,則執(zhí)行表達(dá)式成立,則執(zhí)行表達(dá)式expr.例如,例如,編寫一個(gè)計(jì)算編寫一個(gè)計(jì)算1000以內(nèi)的以內(nèi)的Fibonacci數(shù)數(shù): f-1;f2-1;i-1 while(fi+fi+11000) fi+2-fi+fi+1 irepeat expr repeat循環(huán)依賴循環(huán)依賴break語(yǔ)句跳出循環(huán)語(yǔ)句跳出循環(huán).例如,用例如,用repeat循環(huán)編寫一個(gè)計(jì)算循環(huán)編寫一個(gè)計(jì)算1000以內(nèi)的以內(nèi)的Fibonacci數(shù)的程序數(shù)的程序:f-1;f2-

8、1;i-1repeat fi+2-fi+fi+1 i=1000) break 或?qū)l件語(yǔ)句改為或?qū)l件語(yǔ)句改為if (f i +f i+11000) next else break,也有同樣的計(jì)算結(jié)果,也有同樣的計(jì)算結(jié)果.編寫自己的編寫自己的R函數(shù)函數(shù) R軟件允許用戶自己創(chuàng)建模型的目標(biāo)函數(shù)軟件允許用戶自己創(chuàng)建模型的目標(biāo)函數(shù).有許多有許多R函數(shù)存貯為特殊的內(nèi)部形式,并可以被進(jìn)一步函數(shù)存貯為特殊的內(nèi)部形式,并可以被進(jìn)一步的調(diào)用的調(diào)用.這樣在使用時(shí)可以使語(yǔ)言更有力、更方便,這樣在使用時(shí)可以使語(yǔ)言更有力、更方便,而且程序也更美觀而且程序也更美觀. 函數(shù)定義的格式如下:函數(shù)定義的格式如下: name-f

9、unction(arg_1,arg_2,.) expression expression是是R中的表達(dá)式中的表達(dá)式(通常是一組表達(dá)式通常是一組表達(dá)式),arg_1, arg_2,表示函數(shù)的參數(shù)表示函數(shù)的參數(shù).表達(dá)式中,放在表達(dá)式中,放在程序最后的信息是函數(shù)的返回值,返回值可以是程序最后的信息是函數(shù)的返回值,返回值可以是向量、數(shù)組向量、數(shù)組(矩陣矩陣)、列表或數(shù)據(jù)框、列表或數(shù)據(jù)框.調(diào)用調(diào)用R函數(shù)函數(shù) 調(diào)用函數(shù)的格式為調(diào)用函數(shù)的格式為name(expr_1, expr_2,.),并,并且在任何時(shí)候調(diào)用都是合法的且在任何時(shí)候調(diào)用都是合法的. 在調(diào)用自己編寫的函數(shù)在調(diào)用自己編寫的函數(shù)(程序程序)時(shí),需要將已寫好時(shí),需要將已寫好的函數(shù)調(diào)到內(nèi)存中,即使用的函數(shù)調(diào)到內(nèi)存中,即使用“運(yùn)行運(yùn)行R腳本文件腳本文件”菜單項(xiàng),執(zhí)行菜單項(xiàng),執(zhí)行source ( )函數(shù)函數(shù).簡(jiǎn)單的簡(jiǎn)單的函數(shù)示例函數(shù)示例 編寫一個(gè)函數(shù)計(jì)算編寫一個(gè)函數(shù)計(jì)算x的三階矩:的三階矩:

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論