R語言學(xué)習(xí)筆記內(nèi)附實(shí)例及代碼_第1頁
R語言學(xué)習(xí)筆記內(nèi)附實(shí)例及代碼_第2頁
R語言學(xué)習(xí)筆記內(nèi)附實(shí)例及代碼_第3頁
R語言學(xué)習(xí)筆記內(nèi)附實(shí)例及代碼_第4頁
R語言學(xué)習(xí)筆記內(nèi)附實(shí)例及代碼_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、R語言入門R是開源的統(tǒng)計(jì)繪圖軟件,也是一種腳本語言,有大量的程序包可以利用。R中的向量、列表、數(shù)組、函數(shù)等都是對(duì)象,可以方便的查詢和引用,并進(jìn)行條件篩選。R具有精確控制的繪圖功能,生成的圖可以另存為多種格式。R編寫函數(shù)無需聲明變量的類型,能利用循環(huán)、條件語句,控制程序的流程。R網(wǎng)絡(luò)資源:R主頁: R資源列表 NCEAS R Graphical Manual 統(tǒng)計(jì)之都: / QuikR 丁國(guó)徽的R文檔: R語言中文論壇 一、用函數(shù)install.packages(), 直接輸入就可以聯(lián)網(wǎng),第一次的話之后選擇鏡像,然后選擇包下載即可如果已經(jīng)連接到互聯(lián)網(wǎng),在括號(hào)中輸入要安

2、裝的程序包名稱,選擇鏡像后,程序?qū)⒆詣?dòng)下載并安裝程序包。例如:要安裝picante包,在控制臺(tái)中輸入install.packages("picante")已經(jīng)安裝了?二. 安裝本地zip包路徑:Packages>install packages from local files選擇本地磁盤上存儲(chǔ)zip包的文件夾。(文件,運(yùn)行R的腳本,選擇所在文檔)三.調(diào)用程序包在控制臺(tái)中輸入如下命令 library(“picnate”) 程序包內(nèi)的函數(shù)的用法與R內(nèi)置的基本函數(shù)用法一樣。四.程序包內(nèi)部都有哪些函數(shù)?分別有什么功能?查詢程序包內(nèi)容最常用的方法:1 菜單幫助>Html

3、幫助;2 查看pdf幫助文檔五.查看函數(shù)的幫助文件函數(shù)的默認(rèn)值是什么?怎么使用?使用時(shí)需要注意什么問題?需要查詢函數(shù)的幫助。1 ?t.test直接打開相關(guān)函數(shù)的說明和使用模板。2 RGui>Help>Html help同樣的效果,同上3 apropos("t.test")合理使用T檢驗(yàn),五種模式的T檢驗(yàn)4 help("t.test")幫助同1-25 help.search("t.test")有關(guān)T檢驗(yàn)的一切東西都可以查出來。6 查看R包pdf手冊(cè)六、幫助很強(qiáng)大 lmstats #函數(shù)名及所在包 Fitting Linear

4、 Models #標(biāo)題 Description #函數(shù)描述 Usage #默認(rèn)選項(xiàng) Arguments #參數(shù) Details #詳情 Author(s) #作者 References #參考文獻(xiàn) Examples #舉例七、R圖形界面:R commander 1安裝R commanderinstall.packages("Rcmdr") 2 R將自動(dòng)下載并安裝Rcmdr所需的所有程序包調(diào)用R Commander圖12 R commander界面library(Rcmdr)八、R的函數(shù)R是一種解釋性語言,輸入后可直接給出結(jié)果。功能靠函數(shù)實(shí)現(xiàn)。函數(shù)形式: 函數(shù)(輸入數(shù)據(jù),參數(shù)

5、= )如果沒有指定,則參數(shù)的以默認(rèn)值為準(zhǔn)。例如:平均值 mean(x, trim = 0, na.rm = FALSE, .)線性模型 lm(yx, data=test)每一個(gè)函數(shù)執(zhí)行特定的功能,后面緊跟括號(hào),例如:平均值 mean(); 求和 sum(); 繪圖 plot() ;排序 sort()。除了基本的運(yùn)算之外,R的函數(shù)又分為”高級(jí)”和”低級(jí)”函數(shù),高級(jí)函數(shù)可調(diào)用低級(jí)函數(shù),這里的”高級(jí)”函數(shù)習(xí)慣上稱為泛型函數(shù)。如plot()就是泛型函數(shù),可以根據(jù)數(shù)據(jù)的類型,調(diào)用底層的函數(shù),應(yīng)用相應(yīng)的方法繪制相應(yīng)的圖形。這就是面向?qū)ο缶幊痰乃枷?。查詢的方法:Help>Html help>pa

6、ckageslog()log10()exp()sin()cos()tan()asin()acos()binom.test()fisher.test()chisq.test()friedman.test()mean()sd()var()glm(yx1+x2+x3, binomial).九、賦值與注釋與對(duì)象起名<- 右邊的值賦值給左邊的變量或者對(duì)象 ; # 注釋注釋部分不會(huì)編譯R處理的所有數(shù)據(jù)、變量、函數(shù)和結(jié)果都以對(duì)象的形式保存。1.區(qū)分大小寫,注意China和china的不同。2.不能用數(shù)字作為變量,對(duì)象也不能用數(shù)字開頭,但是數(shù)字可以放在中間或結(jié)尾,如2result與result2,后者是

7、合法的。3.建議不要用過短的名稱。可以用”.”作為間隔,例如 anova.result1。4.不要使用保留名:NA, NaN, pi, LETTERS, letters, month.abb, 十、元素與對(duì)象的類1.對(duì)象是由各元素組成的。每個(gè)元素,都有自己的數(shù)據(jù)類型。2.元素種類數(shù)值型 Numeric 如 100, 0, -4.335字符型 Character 如“China”邏輯型 Logical 如TRUE, FALSE因子型 Factor 表示不同類別復(fù)數(shù)型 Complex 如:2 + 3i3.對(duì)象的類class:因子(factor) 因子是一個(gè)分類變量c("

8、;a","a","b","b","c")向量(vector)一系列元素的組合。如 c(1,2,3); c("a","a","b","b","c")矩陣(matrix)二維的數(shù)據(jù)表,是數(shù)組的一個(gè)特例:x <- 1:12 ; dim(x) <- c(3,4) ,1 ,2 ,3 ,41, 1 4 7 102, 2 5 8 113, 3 6 9 12數(shù)組(array) 數(shù)組是k維的數(shù)據(jù)表(k in 1:

9、n, n 為正整數(shù))。向量(n = 1) 矩陣(n = 2) 高維數(shù)組(n >= 3) 數(shù)據(jù)框(dataframe)是由一個(gè)或幾個(gè)向量和(或)因子構(gòu)成,它們必須是等長(zhǎng)的,但可以是不同的數(shù)據(jù)類型。每個(gè)數(shù)據(jù)表可以看作一個(gè)數(shù)據(jù)框(dataframe)。每一行(row)作為一個(gè)記錄(entry),每一列(column)作為一個(gè)向量(vector)。由很多不同類型的向量組成,如字符型,因子型,數(shù)值型。如何生成數(shù)據(jù)框??jī)煞N辦法:(1)從外部數(shù)據(jù)讀??;(2)各類型因子組合成數(shù)據(jù)框。列表(list)列表可以包含任何類型的對(duì)象??梢园蛄?、矩陣、高維數(shù)組,也可以包含列表。十一、運(yùn)算符數(shù)學(xué)運(yùn)算運(yùn)算后給出數(shù)

10、值結(jié)果: +, -, *, /, (冪)比較運(yùn)算運(yùn)算后給出判別結(jié)果: (TRUE FALSE):>, <, <=, >=, =(=是計(jì)算機(jī)編程的二元運(yùn)算符。當(dāng)左邊的內(nèi)容與右邊的內(nèi)容相同時(shí),返回1。其余時(shí)候返回0。=是判斷兩個(gè)值大小是否相同的運(yùn)算符。), !=不等于邏輯運(yùn)算與、或、非:!, &, &&, |, |十二、數(shù)據(jù)的讀取1.最為常用的數(shù)據(jù)讀取方式是用read.table() 函數(shù)或read.csv()函數(shù)讀取外部txt或csv格式的文件。 txt文件,制表符間隔; csv文件,逗號(hào)間隔。一些R程序包(如foreign)也提供了直接讀取Exc

11、el, SAS, dbf, Matlab, spss, systat, Minitab文件的函數(shù)。2.read.csv()的使用例:test.data<-read.csv("D:/R/test2.csv",header=T)header=T表示將數(shù)據(jù)的第一行作為標(biāo)題。read.table(file=file.choose(),header=T)可以彈出對(duì)話框,選擇文件。3.數(shù)據(jù)量較大時(shí)用read.table函數(shù)從外部txt文件讀取第1步將Excel中的數(shù)據(jù)另存為.txt格式(制表符間隔)或.csv格式。第2步用read.table()或read.csv()函數(shù)將數(shù)據(jù)讀

12、入R工作空間,并賦值給一個(gè)對(duì)象。4.例子:mydataframe<-read.csv("F:/KAGGLE1/train.csv",header=F)命名讀取函數(shù)數(shù)據(jù)位置文件夾名稱是否讀取頭(T/F)十三、向量、矩陣和數(shù)據(jù)框的創(chuàng)建有時(shí)需要對(duì)讀入的數(shù)據(jù)進(jìn)行操作,將某一向量轉(zhuǎn)換成矩陣,如條件篩選,此時(shí)將遇到向量、矩陣和數(shù)據(jù)框的生成、條件篩選等。1.1四種類型的向量:字符型character<-c("China", "Korea", "Japan", "UK", "USA&quo

13、t;, "France", "India", "Russia") ;數(shù)值型numeric<-c(1, 3, 6, 7, 3, 8, 6, 4); 邏輯型logical<-c(T, F, T, F, T, F, F, T);復(fù)數(shù)型略。1.2創(chuàng)建向量 用X<-c()函數(shù)或者c() , rep() , seq() , ”:”c(2,5,6,9) rep(2,times=4) seq(from=3, to=21, by=3 ) 1 3 6 9 12 15 18 21“:” 1:15 #意思是 1 1 2 3 4 5 6 7

14、8 9 10 11 12 13 14 15通過與向量的組合,產(chǎn)生更為復(fù)雜的向量。 rep(1:2,c(10,15)1.3向量創(chuàng)建產(chǎn)生隨機(jī)數(shù)runif(10, min = 0, max= 1) rnorm(10, mean = 0, sd = 1)1.4幾個(gè)隨機(jī)數(shù)的相關(guān)函數(shù)概率密度 dunif(x, min=0, max=1, log = FALSE) 累積函數(shù) punif(q, min=0, max=1, )分位數(shù) qunif(p, min=0, max=1, ) 隨機(jī)均勻分布 runif(n, min=0, max=1)2.矩陣的創(chuàng)建生成矩陣的函數(shù) dim()和matrix()dim() 定

15、義矩陣的行列數(shù),例如: x <- 1:12 dim(x) <- c(3,4) ,1 ,2 ,3 ,4 1, 1 4 7 10 2, 2 5 8 11 3, 3 6 9 12 matrix.x <- matrix(1:12,nrow=3,byrow=T)t(x)#轉(zhuǎn)置 為行或列添加名稱:s() s()3.數(shù)據(jù)框的創(chuàng)建創(chuàng)建數(shù)據(jù)框的函數(shù):data.frame(), as.data.frame(), cbind(), rbind()cbind() # 按列組合成數(shù)據(jù)框rbind() # 按行組合成數(shù)據(jù)框data.frame() #生成數(shù)據(jù)框head()

16、 #默認(rèn)訪問數(shù)據(jù)的前6行4.列表的創(chuàng)建列表可以是不同類型甚至不同長(zhǎng)度的向量(數(shù)值型,邏輯型,字符型等等)、數(shù)據(jù)框甚至是列表的組合。list() 例如 list(character,numeric,logical,matrix.x)十四、對(duì)象類的判斷與轉(zhuǎn)換對(duì)象類型判斷: mode() 判斷存儲(chǔ)的類型 class() 判斷數(shù)據(jù)的類根據(jù)數(shù)據(jù)的類,采用相應(yīng)的處理方法。以下函數(shù),主要用在函數(shù)處理異常時(shí)使用,目的是增強(qiáng)程序的穩(wěn)健性。類型判斷is.numeric() #返回值為TRUE或FALSEis.logical() #是否為邏輯值is.charactor() #是否為字符串is.null() #是否為

17、空is.na() #是否為na類的轉(zhuǎn)換as.numeric() #轉(zhuǎn)換為數(shù)值型as.logical() #轉(zhuǎn)換為邏輯型as.charactor() #轉(zhuǎn)換為字符串a(chǎn)s.matrix() #轉(zhuǎn)換為矩陣as.data.frame() #轉(zhuǎn)換為數(shù)據(jù)框as.factor() #轉(zhuǎn)換為因子十五、元素引用與訪問1.向量?jī)?nèi)的元素引用# Dalgaard書中的例子intake.pre <- c(5260, 5470, 5640, 6180, 6390, 6515, 6805, 7515, 7515, 8230, 8770)intake.post <- c(3910, 4220, 3885, 516

18、0, 5645, 4680, 5265, 5975, 6790, 6900, 7335)intake.pre5; #引用第5個(gè)元素intake.prec(3,5,7) #引用第3,5,7個(gè)元素v <- c(3,5,7); intake.prev; intake.pre1:5; #引用第1到5個(gè)元素intake.pre-c(3,5,7) #去除第3,5,7元素2.數(shù)據(jù)框內(nèi)元素的引用intake <- data.frame(intake.pre, intake.post)引用數(shù)據(jù)框中的元素(1) $ 引用列,后面為列的名稱例如 intake$intake.pre(2) ,方括號(hào)引用,逗

19、號(hào)前為行,逗號(hào)后為列intake,1; 引用第1列intake5,; 引用第5行intake5,1; 引用第1列,第5行i = 1:5; intakei, 引用1到5行3.列表內(nèi)元素的引用列表內(nèi)元素的引用可以用” 如 list1c(1,2,3)上述放于”內(nèi)的數(shù)字,稱為下標(biāo)。通過下標(biāo)的變化,可以方便的訪問向量、數(shù)據(jù)框、矩陣、列表內(nèi)的各元素。熟悉下標(biāo)的用法對(duì)掌握循環(huán)結(jié)構(gòu)是非常重要的。4.訪問數(shù)據(jù)框內(nèi)的元素直接調(diào)用數(shù)據(jù)框內(nèi)的列,以列的名稱作為向量的名稱attatch()detatch()在函數(shù)內(nèi)部,對(duì)數(shù)據(jù)進(jìn)行相應(yīng)調(diào)整with() #with函數(shù)內(nèi)部形成一個(gè)空間,在這個(gè)空間中,函數(shù)可以對(duì)列訪問。wit

20、hin()transform() #數(shù)據(jù)的轉(zhuǎn)換,如取logsubset() #取數(shù)據(jù)的子集apply() #對(duì)數(shù)據(jù)表或矩陣應(yīng)用某個(gè)函數(shù),可減少循環(huán)十六、條件篩選與排序1.條件篩選條件篩選是先對(duì)變量否滿足條件進(jìn)行判斷,滿足為TRUE,不滿足為FALSE。之后再用邏輯值對(duì)向量?jī)?nèi)的元素進(jìn)行篩選。intake.pre > 70001 FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE TRUE TRUE TRUE intake.preintake.pre > 7000intake.pre > 7000 & intake.pre <

21、;= 80001 FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE TRUE FALSE FALSE intake.postintake.pre > 7000 & intake.pre <= 80002.排序?qū)⑾蛄恐械脑匕凑找欢樞蚺帕小?sort() 按數(shù)值大小排序舉例: intake$intake.pre sort(intake$intake.pre) order() 默認(rèn)給出從小到大的出現(xiàn)序號(hào)。 order(intake$post) o <- intakeorder(intake$intake.pre),十七、工作路

22、徑(工作空間、歷史)1.工作空間 P10R的所有對(duì)象都在計(jì)算機(jī)內(nèi)存的工作空間中。ls() #列出工作空間中的對(duì)象rm() #刪除工作空間中的對(duì)象rm(list=ls() #刪除空間中所有對(duì)象save.image() #保存工作鏡像sink() #將運(yùn)行結(jié)果保存到指定文件中g(shù)etwd() #顯示當(dāng)前工作文件夾setwd() #設(shè)定工作文件夾2.輸入歷史History 輸入的命令,在R中作為歷史history保存,可輸入函數(shù) history() # 查看輸入歷史 history(Inf) # 查看打開R之后所有的輸入 可用向上或向下的箭頭切換輸入的行。十八、腳本編程Scripting1.腳本語言腳

23、本語言(scripting language)又稱動(dòng)態(tài)語言,是依靠解釋器完成相應(yīng)的功能的一類計(jì)算機(jī)語言,通常以ASCII碼的文本格式保存源程序。1.1特點(diǎn)腳本語言語法和結(jié)構(gòu)通常比較簡(jiǎn)單,不需要編譯,通過解釋器對(duì)腳本進(jìn)行解釋,從而給出結(jié)果,能用簡(jiǎn)單的代碼完成復(fù)雜的功能,但是速度較慢。1.2常見的腳本語言Windows批處理程序, PHP, Perl, Python, Ruby, JavaScript等。2.集成開發(fā)環(huán)境很多計(jì)算機(jī)語言都有IDE (integrated development environment),即集成開發(fā)環(huán)境,如 Windows的VisualStudio, Visual B

24、asic等等。 但是R通常無需集成開發(fā)環(huán)境,腳本在一般的文本編輯器里即可編輯。 如 Windows自帶的記事本,Notepad+, UltraEdit,TinnR。Linux下的Vi, Vim, Emacs等等。在代碼較多的情況下,常需要對(duì)行數(shù)、函數(shù)、括號(hào)、函數(shù)選項(xiàng)等進(jìn)行高亮顯示,設(shè)置成不同的顏色,以減少錯(cuò)誤的發(fā)生。 3.編輯器R自帶的腳本編輯器 Editplus ( ) TinnR ( ) Ultraedit ( ) Emacs ( ) Notepad+ 與NpptoR組合 ( ) 記事本或?qū)懽职?等等十九、R繪圖R具備卓越的繪圖功能,通過參數(shù)設(shè)置對(duì)圖形進(jìn)行精確控制。繪制的圖形能滿足出版印刷

25、的要求,可以輸出Jpg、tiff、eps、emf、pdf、png等各種格式。通過與GhostScript軟件的結(jié)合,可以生成600dpi,1200dpi的等各種分辨率和尺寸的圖形。繪圖是通過繪圖函數(shù)結(jié)合相應(yīng)的選項(xiàng)完成的。 繪圖函數(shù)包括高級(jí)繪圖函數(shù)和低級(jí)繪圖函數(shù)。1.高級(jí)繪圖函數(shù):plot() 繪制散點(diǎn)圖等多種圖形,根據(jù)數(shù)據(jù)的類,調(diào)用相應(yīng)的函數(shù)繪圖hist() 頻率直方圖boxplot() 箱線圖stripchart() 點(diǎn)圖barplot() 柱狀圖dotplot() 點(diǎn)圖piechart() 餅圖matplot()數(shù)學(xué)圖形2.低級(jí)繪圖函數(shù):lines()添加線curve()添加曲線ablin

26、e()添加給定斜率的線points()添加點(diǎn)segments()折線arrows()箭頭axis()坐標(biāo)軸box()外框title()標(biāo)題text()文字mtext()圖邊文字3.繪圖參數(shù)參數(shù)用在函數(shù)內(nèi)部,在沒有設(shè)定值時(shí)使用默認(rèn)值。font = 字體,lty = 線類型,lwd = 線寬度,pch = 點(diǎn)的類型,xlab = 橫坐標(biāo),ylab = 縱坐標(biāo),xlim = 橫坐標(biāo)范圍,ylim = 縱坐標(biāo)范圍,也可以對(duì)整個(gè)要繪制圖形的各種參數(shù)進(jìn)行設(shè)定,參見 par()4. 分步繪圖1.打開繪圖窗口,不繪制任何對(duì)象 plot(x, y, type="n", xlab="

27、", ylab="", axes=F) 2.添加坐標(biāo)點(diǎn) points(x,y) 3.添加坐標(biāo)軸 axis(1); axis(at=seq(0.2,1.8,0.2), side=2) 4.補(bǔ)齊散點(diǎn)圖的邊框 box() 5.添加標(biāo)題、副標(biāo)題、橫軸說明、縱軸說明 title(main="Main title", sub="subtitle", xlab="x-label", ylab="y-label")5.在原有圖形上添加元素舉例:x <- rnorm(100) # 生成隨機(jī)數(shù)his

28、t(x,freq=F) # 繪制直方圖curve(dnorm(x),add=T) # 添加曲線h <- hist(x, plot=F) # 繪制直方圖ylim <- range(0, h$density, dnorm(0) #設(shè)定縱軸的取值范圍hist(x, freq=F, ylim=ylim) #繪制直方圖curve(dnorm(x),add=T,col="red") #添加曲線二十、編寫函數(shù)1.編程基礎(chǔ)R可以靈活的編寫程序,用戶自己編寫的程序可以直接調(diào)用。編程時(shí)無需聲明變量的類型,這與C,C+等語言不同?;靖袷剑?函數(shù)名 <- function(數(shù)據(jù)

29、,參數(shù)1= 默認(rèn)值,) 異常處理; 表達(dá)式(循環(huán)/判別); return(返回值); 函數(shù)內(nèi)部也可用#添加注釋2.函數(shù)實(shí)例:data2mat()3.程序流程控制 3.1 條件ifif(條件) 表達(dá)式 if(條件) 表達(dá)式1 else 表達(dá)式2 舉例:p = 0.03 if(p<=0.05) print("p <= 0.05!")else print("p > 0.05!")3.2 循環(huán) for, whilefor(變量 in 向量) 表達(dá)式 用法: for(i in 1:10) print(i) while(條件) 表達(dá)式 用法:i &

30、lt;- 1while(i<10) print(i); i <- i + 13.3 返回值 返回值表示函數(shù)輸出的結(jié)果。 返回值必須是一個(gè)對(duì)象。 R默認(rèn)將最后一行作為返回值。 如果函數(shù)的結(jié)果需要有多個(gè)返回值,可以創(chuàng)建一個(gè)list(),并返回該對(duì)象。 也可以用return()函數(shù),設(shè)定返回值。 但是一個(gè)函數(shù)的返回的對(duì)象只有一個(gè)。3.4 異常處理 如數(shù)據(jù)輸入不能滿足要求,或者參數(shù)設(shè)定錯(cuò)誤等等,可能造成函數(shù)給出錯(cuò)誤的結(jié)果,則需要對(duì)函數(shù)的運(yùn)行過程發(fā)出警告或終止,以提高程序的穩(wěn)健性。 警告的寫法if(any(is.na(inputdata)inputdata <- na.omit(inp

31、utdata)cat(“NAs are found in the input data, and has been removed.n") 終止的寫法 if(any(is.na(xx) stop("NAs are not allowed!n")3.5 函數(shù)舉例:?jiǎn)栴}:輸入直角三角形的兩個(gè)邊長(zhǎng),求其斜邊長(zhǎng)。定義函數(shù):rcal <- function(x,y) z <- x2 + y2 result <- sqrt(z) return(result)調(diào)用函數(shù):rcal(3,4)二十一、數(shù)據(jù)保存write.table()write.csv()save.

32、image()sink()unlink()若有LaTeX基礎(chǔ),可以用 :Sweave() 函數(shù)該函數(shù)能將腳本、程序說明和運(yùn)算結(jié)果直接保存成.tex文件,用LaTeX編譯成pdf文件。代碼與實(shí)際操作1.(:30126/library/base/html/name.html)examplean <- ("arrg")賦值(an) # TRUE判斷是否是name格式屬性?mode(an) # name an 的模式是什么?typeof(an) # symbol an的數(shù)據(jù)類型是什么?symbol2.現(xiàn)有6名患者的身高

33、和體重,檢驗(yàn)體重除以身高的平方是否等于22.5。(從數(shù)據(jù)輸入到t檢驗(yàn))編號(hào)123456身高m1.751.801.651.901.741.91體重kg607257909572代碼:height<-c(1.75,1.80,1.65,1.90,1.74,1.91)weight<-c(60,72,57,90,95,72)number_1<-1:6X<-(weight/height2)t.test(X,mu=22.5)#結(jié)果顯示 One Sample t-testdata: Xt = 0.34488, df = 5, p-value = 0.7442alternative hyp

34、othesis: true mean is not equal to 22.595 percent confidence interval: 18.41734 27.84791sample estimates:mean of x 23.13262height<-c(1.75, 1.80, 1.65, 1.90, 1.74, 1.91)weight<-c(60, 72, 57, 90, 95, 72)sq.height<-height2ratio<-weight/sq.heightt.test(ratio, mu=22.5)#結(jié)果顯示One Sample t-testda

35、ta: ratiot = 0.34488, df = 5, p-value = 0.7442alternative hypothesis: true mean is not equal to 22.595 percent confidence interval: 18.41734 27.84791sample estimates:mean of x 23.13262T檢驗(yàn)的原假設(shè)是U0或者U1U2,=0.05水平的話,P>0.05,不能拒絕原假設(shè),也就是說U1不等于U2統(tǒng)計(jì)學(xué)上是支持的。T檢驗(yàn)單側(cè)與雙側(cè)的關(guān)系,雙側(cè)要求嚴(yán)格,其結(jié)果相對(duì)比較穩(wěn)??;確定分布的話選擇(沒有負(fù)數(shù))單側(cè)檢驗(yàn),不確定

36、的話建議選擇反側(cè)檢驗(yàn)。統(tǒng)計(jì)書(P104)3.讀取文件并進(jìn)行T檢驗(yàn)>read.table("C:/Users/Administrator/Desktop/t.test.data.txt",header=T)>BMI<-c(weight/height2)>t.test(BMI,mu=22.5)height weight1 1.75 602 1.80 723 1.65 574 1.90 905 1.74 956 1.91 72或者> t.test.data<-read.table("C:/Users/Administrator/Des

37、ktop/t.test.data.txt",header=T)> attach(t.test.data) #意義是讓函數(shù)能夠直接進(jìn)行運(yùn)算,而不需要賦值。The following objects are masked _by_ .GlobalEnv:height, weight>ratio<-weight/height2>t.test(ratio) One Sample t-testdata: ratiot = 12.611, df = 5, p-value = 5.569e-05alternative hypothesis: true mean is not

38、 equal to 095 percent confidence interval: 18.41734 27.84791sample estimates:mean of x 23.132624.單因素方差分析將三種不同菌型的傷寒病毒a,b,c分別接種于10,9,和11只小白鼠上,觀察其存活天數(shù),問三種菌型下小白鼠的平均存活天數(shù)是否有顯著差異。 a菌株:2, 4, 3, 2, 4, 7, 7, 2, 5, 4 b菌株:5, 6, 8, 5, 10, 7, 12, 6, 6 c菌株:7,11,6, 6, 7, 9, 5, 10, 6, 3, 10#數(shù)據(jù)讀取,將test1.txt中的內(nèi)容保存到bac

39、中,header=T表示保留標(biāo)題行。bac<-read.table("d:/anova.data.txt",header=T) #將bac數(shù)據(jù)框中的type轉(zhuǎn)換為因子(factor)bac$type<-as.factor(bac$type) ba.an<-aov(lm(daytype, data=bac) summary(ba.an) boxplot(daytype,data=bac,col="red")5.下標(biāo)和條件篩選vector1<-seq(from=2, to=50, by=2) #創(chuàng)建一個(gè)2到50的向量 vector1

40、2, 4, 6, 8, ., 48, 50 #vector120 #選取vector1中的第20個(gè)元素 vector1c(10,15,20) #選取vector1中的第10,15,20個(gè)元素vector110:20 #選取vector1中的第10到20個(gè)元素vector1vector>40 #選取vector1中值大于40的元素6. 了解工作路徑6.1查看當(dāng)前R工作的空間目錄getwd()6.2 將R工作的路徑設(shè)置為 d:/data/setwd("d:/data")save.image("example.Rdata")load("exam

41、ple.Rdata")6.3 歷史 history(Inf)7.例-線性回歸對(duì)一批涂料進(jìn)行研究,確定攪拌速度對(duì)雜質(zhì)含量的影響,數(shù)據(jù)如下,試進(jìn)行回歸分析表3 攪拌速度對(duì)涂料中雜質(zhì)的影響轉(zhuǎn)速rpm 20 22 24 26 28 30 32 34 36 38 40 42 雜質(zhì)率% 8.4 9.5 11.8 10.4 13.3 14.8 13.2 14.7 16.4 16.5 18.9 18.5 腳本舉例#1.編輯腳本并保存:將以下代碼粘貼到編輯器中,另存為regression.r文件。rate<-c(20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40

42、, 42)impurity <-c(8.4, 9.5, 11.8, 10.4, 13.3, 14.8, 13.2, 14.7, 16.4, 16.5, 18.9, 18.5)plot(impurityrate)reg<-lm(impurityrate)abline(reg,col="red")summary(reg)rpm<-seq(from=20,to=42,by=2) #生成一個(gè)從20開始,間隔2,到42的向量mean(rpm)rate<-c(8.4, 9.5, 11.8, 10.4, 13.3, 14.8, 13.2, 14.7, 16.4, 16.5, 18.9, 18.5)mean(rate)plot(rate,rpm) #一般線性回歸都要先畫散點(diǎn)圖觀察。Y軸是rpm,X軸是rate。plot(raterpm) #一般線性回歸都要先畫散點(diǎn)圖觀察。Y

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論