• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      快速學會使用R軟件的方法

      2016-02-24 10:09:33谷恒明胡良平
      四川精神衛(wèi)生 2016年6期
      關鍵詞:語句向量資料

      谷恒明,胡良平,2*

      (1.軍事醫(yī)學科學院生物醫(yī)學統(tǒng)計學咨詢中心,北京 100850;2.世界中醫(yī)藥學會聯(lián)合會臨床科研統(tǒng)計學專業(yè)委員會,北京 100029

      科研方法專題

      快速學會使用R軟件的方法

      谷恒明1,胡良平1,2*

      (1.軍事醫(yī)學科學院生物醫(yī)學統(tǒng)計學咨詢中心,北京 100850;2.世界中醫(yī)藥學會聯(lián)合會臨床科研統(tǒng)計學專業(yè)委員會,北京 100029

      本文目的是使用戶快速了解R軟件的概況和R語言基礎,并能快速采用R軟件解決常用試驗設計與統(tǒng)計分析問題。通過扼要介紹R軟件的概況、R語言的基礎知識、在R環(huán)境中讀入和存儲數(shù)據(jù)文件的方法以及用R軟件解決九個與試驗設計和統(tǒng)計分析有關的實際問題,使用戶能方便快捷地實現(xiàn)前述目的。事實表明:R軟件易于獲取、易學易用;R軟件功能強大、適用面寬,能解決與試驗設計、數(shù)據(jù)可視化和各種統(tǒng)計分析有關的問題。

      R軟件;函數(shù);向量;矩陣;數(shù)組;數(shù)據(jù)框;列表

      1 R軟件概述[1-3]

      1.1 R軟件的歷史

      新西蘭奧克蘭大學的Ross Ihaka與Rontleman一道基于S語言開發(fā)了一個面向對象的編程環(huán)境,簡稱為“R軟件”,它是一個免費且開源的計算機運行環(huán)境。

      1.2 R軟件的功能

      R軟件的主要功能是可視化、數(shù)學計算與統(tǒng)計分析。所謂可視化,就是不僅可以繪制一般的統(tǒng)計圖,還可繪制很多復雜且精細的圖形;所謂數(shù)學計算與統(tǒng)計分析,其所涉獵的范圍也是非常寬泛的。R軟件是迄今為止全球統(tǒng)計軟件中內(nèi)容最豐富的,幾乎涵蓋了全世界已經(jīng)發(fā)現(xiàn)的各種算法,有些雖然暫時可能還沒有加入進來,但R軟件包每天都由全世界的學術志愿者在追加新的內(nèi)容,而且增加的數(shù)量和速度相當可觀。

      1.3 R軟件的獲取

      由于R軟件是一個免費且開源的統(tǒng)計分析軟件,所以R軟件的獲取是極其方便的。建議將R軟件安裝在一直可以上網(wǎng)的計算機(因為保密計算機是不允許與國際互聯(lián)網(wǎng)連接的)上,這樣便于R軟件的更新。

      R軟件官網(wǎng)地址:http://www.r-project.org/;與R軟件配套使用的IDE(Integrated Development Environment,集成開發(fā)環(huán)境,簡單可理解為編程工具)的地址:http://www.rstudio.com/。

      從前述第一個網(wǎng)址可以下載到最新版本的R軟件;從前述第二個網(wǎng)址可以下載到最新版本的rstudio軟件。

      在R軟件環(huán)境中,每次只能輸入一行代碼。當然,一行中可以只輸入一個R語言的語句或函數(shù)或命令,也可以輸入多個R語言的語句或函數(shù)或命令,但各語句之間必須用分號隔開。只要一鍵入回車鍵,就立即執(zhí)行。

      在rstudio軟件環(huán)境中,一次可以輸入一個文本,還可以將其存儲起來。于是,用戶可以把整個文本選中以后,再一次性提交給系統(tǒng)去執(zhí)行。

      1.4 R軟件的界面

      在下載并成功安裝了R軟件包后,就會在計算機桌面上出現(xiàn)一個R軟件快捷方式圖標,其形狀就是一個筆畫很粗的大寫英文字母“R”。用鼠標左鍵雙擊此圖標,就可以啟動R軟件。在其窗口的左上角上有四行內(nèi)容,從上到下依次為:

      第1行為“R RGui(64-bit)”,指明系統(tǒng)為64-位;第2行為菜單欄,分別為“文件”、“編輯”、“查看”、“其他”、“程序包”、“窗口”、“幫助”;第3行為八個快捷圖標,分別為“打開文件”、“加載工作空間”、“保存工作空間”、“復制”、“粘貼”、“復制并粘貼”、“終止當前計算”和“打印”;第4行為“R R console”,該行表明在大窗口內(nèi)嵌套著的這個小窗口名叫“R軟件運行環(huán)境中與用戶交流信息的控制臺,簡稱控制臺,具體錄入信息或命令的位置在此小窗口的最下面,以‘>’為標志,它被稱為‘提示符’”。

      若選中菜單欄上的“程序包”,再選擇其中的第一行“加載程序包”,就會彈出一個長方形的窗口。在這個長方形窗口內(nèi)共呈現(xiàn)了約30個對象,它們當中有些是“程序包”,還有一些是“函數(shù)”。事實上,它們之間的區(qū)別就在于:“程序包”中包含多個不同的“函數(shù)”,而“函數(shù)”就是一個完成某項任務的“獨立程序”。由此可知,所謂用R軟件包來實現(xiàn)統(tǒng)計計算或繪制圖形,實際上就是調用某個程序包中的某個函數(shù)或調用一個獨立的函數(shù)。

      1.5 R軟件包中的函數(shù)

      1.5.1 R軟件包中程序包和函數(shù)的數(shù)量

      R軟件的一切操作幾乎都是通過“對象(注:函數(shù)是最常被使用的一種對象)”來實現(xiàn)的。從表面上看,R軟件包中有許多“程序包”。粗略地說,迄今為止R軟件包中約有近萬個程序包,其數(shù)目是不確定的。R軟件官方網(wǎng)站(www.r-project.org)上顯示,到2015年12月2日止,已有7562個程序包。但仔細查看,還有一些程序包(如base、graphic、stats、stats4等)不在列表之中。其實,在很多所謂的“程序包”中,類似base和stats這樣的程序包(其內(nèi)包含很多函數(shù))并非很多,大多數(shù)被冠以“程序包”的東西其實就是一個“函數(shù)”,例如boot、class等。正因如此,當你看到如下的遞增數(shù)目才不會感到驚訝:從R軟件官網(wǎng)上按時間排序的結果可知:2015年12月1日就增加了大約17個所謂的“程序包”,2015年12月2日就增加了大約23個所謂的“程序包”。事實上,它們很可能都是“函數(shù)”。

      在R軟件的所謂“程序包”中,除了少量真正的程序包與函數(shù)外,還有一些“對象”介于它們二者之間。例如foreign。它既不是一個真正的程序包,也不是一個函數(shù),而是一個R軟件與其他統(tǒng)計軟件(如SAS、SPSS)進行數(shù)據(jù)格式互相交換的“界面”,更確切地說,它是一個不同統(tǒng)計軟件信息交換的“接口”。這一點可以通過在R軟件的控制臺發(fā)送下面兩條命令來證實:

      >help(foreign)回車

      >??foreign回車

      第一條命令為啟用“幫助功能”尋求幫助信息。然而,此時會顯示出錯信息;第二條命令為啟用“檢索功能”尋求檢索結果。檢索的結果會彈出一個窗口,因篇幅所限,展示窗口的圖片從略。此窗口中的內(nèi)容表明:foreign是一個R軟件與其他統(tǒng)計軟件數(shù)據(jù)格式轉換的一個界面或接口(Foreign Function Interface)。

      1.5.2 往已安裝的R軟件包中追加新程序包的方法

      通過R軟件窗口上的菜單欄“程序包”彈出的長方形窗口可知:在用戶所安裝的R軟件包中,真正的“程序包(其中有些是函數(shù))”的數(shù)量是十分有限的。由此可知,用戶是經(jīng)常需要往已安裝的R軟件包中追加新程序包。具體方法如下:

      若需要某些其他程序包時,當用戶正在使用的計算機是與網(wǎng)絡連接的,可以隨時安裝或更新程序包。例如,現(xiàn)在在線安裝一個新的程序包AggregateR(其實,它是一個函數(shù)。值得注意的是:這個函數(shù)在已出版的有關R語言的書中是aggregate,后來被更新成AggregateR;原先有tapply函數(shù),現(xiàn)在它似乎被取消掉了,這些都需要在連網(wǎng)計算機上選定了“鏡像(參見下面的一個段落)”后,從“程序包”窗口中查找才能發(fā)現(xiàn))。具體加載方法如下:

      >install.packages(“AggregateR”) 回車

      回車后,會立即彈出一個名為“HTTPS CRAN mirror ”長方形窗口(就是讓用戶指定“鏡像”,用通俗的語言表達,就是指定從哪個國家的哪個服務器上下載用戶所需要的程序包。一般來說,在此窗口中所列出的許多國家的具體服務器中,R軟件的全部內(nèi)容是基本相同的,只是最近更新時間不同,可能在“新包或函數(shù)”的數(shù)量上略有區(qū)別。通常用戶選擇離自己最近的服務器,例如中國就有4個服務器,分別分布在北京、武漢、廣州等地點)。

      筆者選定“China(Beijing 4) [https]”,然后按“OK”按鈕,計算機就會從指定“鏡像”上自動下載并安裝所要求的程序包或函數(shù)。

      若不使用install.packages( )函數(shù),可通過R軟件的菜單欄中“程序包”彈出的窗口,先選定“設定CRAN鏡像”,再選定“安裝程序包”來完成與前面類似的任務。

      1.6 R軟件的工作目錄

      1.6.1 如何知道R軟件啟動后的工作目錄

      啟動R軟件之后,系統(tǒng)會將當前工作目錄(即存儲信息的文件夾)自動設置為安裝R軟件的目錄,通過在控制臺鍵入函數(shù)getwd( ) 回車后顯示的信息,便可得知。

      >getwd( )回車

      例如,在計算機上鍵入上述函數(shù)回車后就會顯示如下的信息:

      [1] "C:/Users/hu/Documents"

      這個輸出結果表明:在此R軟件中,一旦產(chǎn)生了需要存儲的信息,都將被存儲在C盤上的三級文件夾內(nèi):第一級為“Users”,第二級為“hu”,第三級為“Documents”。

      1.6.2 如何改變R軟件的工作目錄

      若用戶想改變工作目錄,需要事先創(chuàng)建一個工作目錄。通常就是事先在指定盤上創(chuàng)建一個文件夾,以便在本次啟動R軟件后且在退出R軟件之前將需要存儲的信息存入指定的文件夾中去。例如,在計算機G盤上創(chuàng)建了一個名為studyr的文件夾,然后選中剛啟動R軟件控制臺界面上的菜單“文件”,再選中彈出的小窗口內(nèi)的“改變工作目錄”,便彈出一個大窗口,再根據(jù)窗口中的提示信息,可以選定用戶的“工作目錄”。

      事實上,改變工作目錄的最簡單方法是在控制臺上輸入函數(shù)“setwd( )”并回車即可。具體方法如下:

      >setwd(“G:studyr”) 回車

      1.7 如何使用R軟件的幫助功能

      R軟件包中有強大的幫助功能,當啟動R軟件之后,在其操作窗口的第二行最后位置有菜單“幫助”,選中它后會彈出一個小窗口。根據(jù)此小窗口內(nèi)的提示信息,逐一選中并閱讀,就可找到用戶關心的很多內(nèi)容及其解決方法。

      2 使用R軟件需要了解的基本知識[1-3]

      2.1 在R中數(shù)據(jù)的組織形式的概述

      使用任何統(tǒng)計軟件時,首先需要提供待分析的數(shù)據(jù)。在R中,有如下多種方法可將數(shù)據(jù)按某種形式組織在一起。然后,R軟件就可對其實現(xiàn)可視化或統(tǒng)計分析。

      2.2 用c()函數(shù)生成向量

      2.2.1 生成自然順序的向量

      > x1<- c(12:24);x1

      [1] 12 13 14 15 16 17 18 19 20 21 22 23 24

      以上是生成一個名為x1的向量,其元素分別為12~24的自然數(shù)。

      2.2.2 生成指定分量的向量

      > x2<- c(13,21,45,19,28,79);x2

      [1] 13 21 45 19 28 79

      以上是生成一個名為x2的向量,其元素分別為“13、21、45、19、28、79”。

      2.3 用matrix()函數(shù)生成矩陣

      2.3.1 生成以自然數(shù)為元素的矩陣

      > A<- matrix(1:30,nrow=6,ncol=5);A

      [,1] [,2] [,3] [,4] [,5]

      [1,] 1 7 13 19 25

      [2,] 2 8 14 20 26

      [3,] 3 9 15 21 27

      [4,] 4 10 16 22 28

      [5,] 5 11 17 23 29

      [6,] 6 12 18 24 30

      以上是生成一個名為A的6×5矩陣,其元素分別為“1~30”的自然數(shù),按“列”的順序放置。

      > B<- matrix(1:30,nrow=6,ncol=5,byrow=T);B

      [,1] [,2] [,3] [,4] [,5]

      [1,] 1 2 3 4 5

      [2,] 6 7 8 9 10

      [3,] 11 12 13 14 15

      [4,] 16 17 18 19 20

      [5,] 21 22 23 24 25

      [6,] 26 27 28 29 30

      以上是生成一個名為B的6×5矩陣,其元素分別為“1~30”的自然數(shù),按“行”的順序放置。

      2.3.2 生成指定元素的矩陣

      > C<- matrix(c(2,4,6,8,7,5,3,1),nrow=2,ncol=4,byrow=T);C

      [,1] [,2] [,3] [,4]

      [1,] 2 4 6 8

      [2,] 7 5 3 1

      以上是生成一個名為C的2×4矩陣,其元素分別為“2、4、6、8、7、5、3、1”的自然數(shù),按“行”的順序放置。

      2.4 用array()函數(shù)生成數(shù)組

      2.4.1 生成二維數(shù)組舉例

      >D<- array(data=1:12,dim=c(3,4));D

      以上語句的目的是創(chuàng)建一個3行4列的二維數(shù)組并賦值給數(shù)組名D。

      [,1] [,2] [,3] [,4]

      [1,] 1 4 7 10

      [2,] 2 5 8 11

      [3,] 3 6 9 12

      以上就是所創(chuàng)建的二維數(shù)組D的具體內(nèi)容。

      2.4.2 生成三維數(shù)組舉例

      >E<- array(data=1:24,dim=c(4,3,2));E

      以上語句的目的是創(chuàng)建一個三維數(shù)組,第一個維度為4行、第二個維度為3列、第三個維度為2層。

      , , 1

      [,1] [,2] [,3]

      [1,] 1 5 9

      [2,] 2 6 10

      [3,] 3 7 11

      [4,] 4 8 12

      以上顯示的是第1層上的二維數(shù)組。

      , , 2

      [,1] [,2] [,3]

      [1,] 13 17 21

      [2,] 14 18 22

      [3,] 15 19 23

      [4,] 16 20 24

      以上顯示的是第2層上的二維數(shù)組。

      2.5 用factor()函數(shù)生成因子

      2.5.1 何為因子

      所謂因子,實際上就是在進行試驗設計時需要考察的影響因素。例如,性別(sex)通常只有男(M)與女(F)兩個水平。即使研究者觀測了一萬個人的性別,似乎sex有一萬個取值,但完全不同的取值只有兩個,它們就是性別(sex)這個“因子”的兩個水平。

      2.5.2 舉例說明

      > sex<- c("M","F","F","M","M","M","F","F","M","F")

      以上語句生成一個叫sex的向量,代表已觀測到的10名受試者的性別。

      > sex_factor<- factor(sex);sex_factor

      以上語句的目的是調用factor( )函數(shù),將sex變量中的所有觀測歸納成一個叫sex_factor 的因子,并輸出該因子。

      [1] M F F M M M F F M F

      Levels: F M

      以上輸出的結果表明,該因子的原始觀測值有10個(列在第一行),所形成的水平被列在第二行上,其兩個水平分別為“F”和“M”。

      2.6 用data.frame()函數(shù)生成數(shù)據(jù)框

      2.6.1 何為數(shù)據(jù)框

      在R中,所謂的數(shù)據(jù)框,實際上就是表達“數(shù)據(jù)庫結構”的一種表格。此種表格中,假定有n行m列,這n行代表n個受試對象,而這m列代表從每位受試對象身上觀測的m個變量的具體取值。

      注意:數(shù)據(jù)框中各列的長度應相同,即各列中元素的個數(shù)相同。各列變量的性質(數(shù)值型或字符型)可以不同,但同一列中元素的性質必須相同。

      2.6.2 舉例說明

      > sex<- c("M","F","F","M","M","M","F","F","M","F")

      > height<- c(165,171,163,184,169,192,158,167,183,176)

      > data<- data.frame(sex,height);data

      前兩句創(chuàng)建兩個向量,分別為sex和height;第三句創(chuàng)建一個名為data的數(shù)據(jù)框并顯示其內(nèi)容(即將前兩行的內(nèi)容按“列”呈現(xiàn)出來,因篇幅所限,此處從略)。

      2.7 用list()函數(shù)生成列表

      2.7.1 何為列表

      R中的列表(list)是一個有序的對象集合。用戶可以通過列表的位置來引用列表中的元素。在一個列表中,可以放置多種不同的數(shù)據(jù)對象。

      2.7.2 列表舉例

      >a<-c(1:5)(創(chuàng)建一個向量a)>b<-matrix(1:25,5,5)(創(chuàng)建一個矩陣b)>c<-list(a,b)(創(chuàng)建一個列表c,使其包含a和b)>c(要求輸出列表c的內(nèi)容)

      [[1]]

      [1] 1 2 3 4 5

      (說明:這里顯示了列表中的第一部分內(nèi)容)

      [[2]]

      [,1] [,2] [,3] [,4] [,5]

      [1,] 1 6 11 16 21

      [2,] 2 7 12 17 22

      [3,] 3 8 13 18 23

      [4,] 4 9 14 19 24

      [5,] 5 10 15 20 25

      (說明:這里顯示了列表中的第二部分內(nèi)容)

      3 以文件的方式在R中輸入和輸出數(shù)據(jù)[1-3]

      3.1 不同數(shù)據(jù)格式的概述

      前面講的內(nèi)容都屬于直接將數(shù)據(jù)放在R程序語句中,以某種組織形式呈現(xiàn)出來。然而,在實際使用中,用戶經(jīng)常需要從外部文件中讀取以第三方格式(如文本文件、EXCEL文件、SAS數(shù)據(jù)集或SPSS數(shù)據(jù)集等)存儲的數(shù)據(jù),使其成為能被R軟件識別和調用的某種格式(如數(shù)據(jù)框或矩陣等形式)。當然,有時也需要將R中已創(chuàng)建的數(shù)據(jù)集按某種第三方數(shù)據(jù)格式存儲到外部設備上去。

      3.2 向R環(huán)境中讀入和輸出幾種不同格式數(shù)據(jù)的方法

      3.2.1 如何用read.table( )函數(shù)在R軟件環(huán)境中以文本格式輸入數(shù)據(jù)

      假定我們已將包含“name、drug、blood、age、height、weight、effect”7個變量10個觀測的資料以文本格式的數(shù)據(jù)文件存儲在G盤的studyr的文件夾中,數(shù)據(jù)文件的名稱為raw_data.txt。當啟動R軟件后,首先改變工作目錄,使其成為“Gstudyr”。然后在控制臺鍵入如下內(nèi)容:

      >x<- read.table("raw_data.txt",header=TRUE) 回車

      就可將原先的10行7列數(shù)據(jù)讀入R運行環(huán)境中,其數(shù)據(jù)集名稱為x。值得注意的是:若“name、drug、blood”是字符型變量,并假定“name”的具體取值為“帶空格的字符串”(如:ZhangSan)時,創(chuàng)建文本文件時,所有的“帶空格的字符串”必需被放置在英文雙引號之內(nèi),即“"Zhang San"”。

      3.3.2 如何用write.table( )函數(shù)在R軟件環(huán)境中以文本格式輸出數(shù)據(jù)

      第一步:在控制臺上使用下面的命令,可為已創(chuàng)建的數(shù)據(jù)集total_data指定一個輸出文件名new_output1:

      >write.table(total_data,file="new_output1")

      第二步:在控制臺上使用下面的命令,可將已創(chuàng)建的數(shù)據(jù)集total_data以文本文件的格式且文件名為new_output1存入當前工作目錄中:

      >write.table(total_data,file="new_output1",quote=FALSE,row.names=FALSE,col.names=TRUE)

      其中,某些參數(shù)的含義如下:

      quote=FALSE要求各列變量及其取值不加引號。

      row.names=FALSE要求各行前不加行名稱(注:行名稱就是行號)。

      col.names=TRUE要求各列頭上應該保留變量名。

      說明:上面僅介紹了“文本格式”的數(shù)據(jù)的讀入和存儲方法,因篇幅所限,其他格式的數(shù)據(jù)文件的讀入與存儲方法,參見文獻[1-3],此處從略。

      4 用R軟件解決試驗設計與統(tǒng)計分析問題舉例[1-4]

      4.1 用R產(chǎn)生隨機數(shù)并繪制直方圖舉例

      【例1】試生成10 000個服從均值為165 cm、標準差為20 cm的正態(tài)分布的隨機數(shù),并用直方圖展示它們(模擬某地10 000個正常成年人的身高數(shù)據(jù))。

      解答:為實現(xiàn)題中的目標,可使用下面的語句(說明:每個語句開始的“>”為R軟件的提示符,下同,不再贅述)。

      > x<- rnorm(10000,165,20)

      > hist(x,prob=T,main="normal distribution(mean=165 cm,sigma=20 cm)")

      第一句的目的是生成10 000個服從均值為165 cm、標準差為20 cm的正態(tài)分布的隨機數(shù)。

      第二句的目的是繪制這10 000個隨機數(shù)的直方圖。

      產(chǎn)生的結果從略。

      4.2 用R進行隨機抽樣舉例

      【例2】假定擲一枚質地均勻的骰子(有6個面,每個面上分別有1、2、3、4、5、6個點),現(xiàn)重復拋骰子20次,顯示有放回隨機抽樣的結果。

      解答:在R中使用下面的語句就可實現(xiàn)前述的目的。

      > sample(c(1:6),20,rep=T)

      [1] 3 2 4 1 5 1 6 1 6 4 3 6 3 6 5 6 4 4 2 2

      以上是20次試驗的結果,每次試驗的結果是1~6六個數(shù)字中的一個出現(xiàn)。這批試驗的結果表明,1出現(xiàn)了3次、2出現(xiàn)了3次、3出現(xiàn)了3次、4出現(xiàn)了4次、5出現(xiàn)了2次、6出現(xiàn)了4次。

      4.3 用R進行隨機分組舉例

      【例3】現(xiàn)有編號為1到24號的24位受試對象,希望將他們隨機地均分為“試驗組”與“對照組”中去,并顯示出隨機分組的結果。

      解答:在R中使用下面的語句就可實現(xiàn)前述的目的。

      > a<- c(1:24)

      > b<- rep(c("試驗組","對照組"),12)

      > c<- sample(b,24,rep=F)

      > d<- cbind(a,c);d

      以上語句的含義如下:

      第一句:生成一個名為a的向量,其元素為1~24。

      第二句:生成一個名為b的向量,其元素由“試驗組”和“對照組”交替組成,共重復12次,故元素個數(shù)為24。

      第三句:生成一個向量c,其元素是從向量b中無放回隨機抽樣的結果,抽出24個元素,本質上,相當于對向量b中的24個元素進行隨機化排列。

      第四句:將向量a與c按列進行合并,生成一個向量d,并將其輸出(從略)。

      輸出結果顯示:將編號為1~24號(見a列)的受試對象隨機均分入試驗組與對照組(見c列)。

      4.4 用R估計樣本含量舉例

      【例4】假定有兩種處理方法,有一個定量評價指標。已知兩組的均值之差量為1.58、合并標準差為5.97、顯著性水準為0.05、檢驗效能為80%。試估計各組至少需要多大的樣本含量。

      解答:這是一個單因素兩水平設計一元定量資料假設檢驗之前估計樣本含量的問題,在R的控制臺上發(fā)送下面的一條命令,就可實現(xiàn)。

      > power.t.test(power=0.80,sig.level=0.05,delta=1.58,sd=5.97)

      輸出結果顯示:每組應選取約226例。

      4.5 用R估計檢驗效能舉例

      【例5】假定有兩種處理方法,有一個定量評價指標。已知兩組的均值之差量為1.58、合并標準差為5.97、顯著性水準為0.05、各組的樣本含量均為226例。試估計能達到的檢驗效能是多大。

      解答:這是一個單因素兩水平設計一元定量資料假設檢驗之前估計檢驗效能的問題,在R的控制臺上發(fā)送下面的一條命令,就可實現(xiàn)。

      >power.t.test(n=226,sig.level=0.05,delta=1.58,sd=5.97)

      輸出結果顯示:檢驗效能大約為80.16%。

      4.6 用R分析定性資料舉例

      【例6】試分析文獻[4]中第374頁的“表13-3”的資料。

      解答:該資料屬于橫斷面研究設計的四格表資料,對該資料進行χ2檢驗所需要的R程序如下。

      > rownum<- c(41,32)

      > colnum<- c(43,8)

      > chisq.test(rbind(rownum,colnum))

      【結論】該校男、女學生英語六級考試通過率不等,由數(shù)據(jù)顯示,女生通過率高于男生。

      4.7 用R分析定量資料舉例

      【例7】試分析文獻[4]中第268頁的“例8-5”的資料。

      解答:該資料屬于單因素兩水平設計一元定量資料,用R對此資料進行差異性分析(包括前提條件的檢驗)所需要的程序如下。

      >x1<- c(66,65,66,68,62,65,63,66,68,62)

      >x2<- c(64,61,57,65,65,63,62,63,64,60)

      >shapiro.test(x1)

      >shapiro.test(x2)

      >var.test(x1,x2)

      >t.test(x1,x2,alternative="two.sided",var.equal=TRUE)

      >t.test(x1,x2,alternative="two.sided",var.equal=FALSE)

      >wilcox.test(x1,x2)

      輸出結果表明:兩組定量資料均滿足正態(tài)性和方差齊性要求(故近似t檢驗與秩和檢驗的結果都可以不看了);可以采用單因素兩水平設計一元定量資料t檢驗分析資料。其結果為:t=2.5705,df=18,P=0.01926,說明兩個平均值(65.1與62.4)之間差異有統(tǒng)計學意義。

      【結論】此小麥品種第5代平均株高高于第6代平均株高,株高性狀沒有達到穩(wěn)定狀態(tài)。

      4.8 用R實現(xiàn)簡單相關分析舉例

      【例8】采用文獻[4]中第419頁的“表16-1”的資料,進行簡單相關分析。

      解答:該資料屬于單組設計二元定量資料,用R對此資料進行直線相關分析所需要的程序如下。

      第一步,將資料按文本格式存儲在指定位置上,例如,存儲在G:study文件夾中,文件名為xuejiaxinjijia.txt,其第一行可以為變量名,第一列與第二列分別為變量x、y及其取值。

      第二步,編寫R語句,讀入數(shù)據(jù)。

      > dataset<- read.table("G:/studyr/xuejiaxinjijia.txt",header=T)

      第三步,編寫R語句,調用plot()函數(shù),考察兩變量之間的散布圖是否呈現(xiàn)線性變化趨勢。

      > plot(y~x,data=dataset)

      繪出的散布圖(此處從略)顯示,散點呈先線性變化趨勢,可以進行直線相關分析。

      第四步,編寫R語句,調用cor.test()函數(shù),對兩定量變量進行Pearson直線相關分析(包括求出相關系數(shù)及其置信區(qū)間和假設檢驗)。

      > cor.test(~y+x,data=dataset)

      輸出結果表明:r=0.8463629,總體相關系數(shù)ρ的95%置信區(qū)間為[0.6456651,0.9376883];采用t檢驗考察總體相關系數(shù)為零的零假設是否成立,得:

      t=6.742,df=18,P<0.000 1,說明總體相關系數(shù)不為零。

      【結論】正常人血液中鉀元素含量(mmol/L)與心肌中鉀元素平均含量(mg/g)之間呈正向線性變化趨勢。

      4.9 用R實現(xiàn)直線回歸分析舉例

      【例9】采用文獻[4]中第419頁的“表16-1”的資料,以心肌中鉀元素平均含量為因變量y、以血液中鉀元素含量為自變量x,進行直線回歸分析。

      解答:這是一個簡單直線回歸分析問題,創(chuàng)建文本文件和繪制散布圖同前例(此處從略),下面只寫出與讀取數(shù)據(jù)、構建直線回歸方程和輸出計算結果有關的語句。

      > dataset<- read.table("G:/studyr/xuejiaxinjijia.txt",header=T)

      > equation<- lm(y~x,data=dataset)

      > summary(equation)

      輸出結果表明:截距、斜率與0之間的差別均有統(tǒng)計學意義。

      [1] 李詩羽, 張飛, 王正林. 數(shù)據(jù)分析: R語言實戰(zhàn)[M]. 電子工業(yè)出版社, 2015: 8-15, 134-156.

      [2] 方匡南, 朱建平, 姜葉飛. R 數(shù)據(jù)分析: 方法與案例詳解[M]. 電子工業(yè)出版社, 2015: 1-12, 54-73,126-168.

      [3] Joseph Adler. R語言核心技術手冊[M]. 2版. 劉思喆, 李艦, 陳鋼, 等譯. 北京: 電子工業(yè)出版社, 2015: 3-49, 389-421.

      [4] 胡良平. SAS常用統(tǒng)計分析教程[M]. 2版. 北京: 電子工業(yè)出版社, 2015: 264-391, 419-434.

      (本文編輯:陳 霞)

      科研方法專題策劃人——胡良平教授簡介

      胡良平,男,1955年8月出生,教授,博士生導師,曾任軍事醫(yī)學科學院研究生部醫(yī)學統(tǒng)計學教研室主任和生物醫(yī)學統(tǒng)計學咨詢中心主任、國際一般系統(tǒng)論研究會中國分會概率統(tǒng)計系統(tǒng)專業(yè)理事會常務理事和北京大學口腔醫(yī)學院客座教授;現(xiàn)任世界中醫(yī)藥學會聯(lián)合會臨床科研統(tǒng)計學專業(yè)委員會會長、中國生物醫(yī)學統(tǒng)計學會副會長,《中華醫(yī)學雜志》等10余種雜志編委和國家食品藥品監(jiān)督管理局評審專家。主編統(tǒng)計學專著45部,參編統(tǒng)計學專著10部;發(fā)表第一作者學術論文220余篇,發(fā)表合作論文130余篇,獲軍隊科技成果和省部級科技成果多項;參加并完成三項國家標準的撰寫工作;參加三項國家科技重大專項課題研究工作。在從事統(tǒng)計學工作的30年中,為幾千名研究生、醫(yī)學科研人員、臨床醫(yī)生和雜志編輯講授生物醫(yī)學統(tǒng)計學,在全國各地作統(tǒng)計學學術報告100余場,舉辦數(shù)十期全國統(tǒng)計學培訓班,培養(yǎng)多名統(tǒng)計學專業(yè)碩士和博士研究生。近幾年來,參加國家級新藥和醫(yī)療器械項目評審數(shù)十項、參加100多項全軍重大重點課題的統(tǒng)計學檢查工作。歸納并提煉出有利于透過現(xiàn)象看本質的“八性”和“八思維”的統(tǒng)計學思想,獨創(chuàng)了逆向統(tǒng)計學教學法和三型理論。擅長于科研課題的研究設計、復雜科研資料的統(tǒng)計分析與SAS實現(xiàn)、各種層次的統(tǒng)計學教學培訓和咨詢工作。

      How to learn the usage of R software quickly

      GuHengming1,HuLiangping1,2*

      (1.ConsultingCenterofBiomedicalStatistics,AcademyofMilitaryMedicalSciences,Beijing100850,China; 2.SpecialtyCommitteeofClinicalScientificResearchStatisticsofWorldFederationofChineseMedicineSocieties,Beijing100029,China

      *Correspondingauthor:HuLiangping,E-mail:lphu812@sina.com)

      The purpose of this paper is to enable users to know the general situation of R software and the foundation of R language, and use R software to solve the general problems of the experimental design and statistical analysis rapidly. Users easily and quickly achieve the aim mentioned above through the brief introduction of R software, the basic knowledge of R language, the method of accessing data in the R environment, and using R software to solve the actual problems related to nine experimental designs and statistical analyses. The fact shows that R software is easy to obtain, learn and use; R software can solve the experimental designs, data visualization and various issues related to statistical analyses due to its the powerful function and wide application scope.

      R software; Function; Vector; Matrix; Array; Data Frame; List

      *通信作者:胡良平,E-mail:lphu812@sina.com)

      195.1

      A

      10.11886/j.issn.1007-3256.2016.06.001

      國家高技術研究發(fā)展計劃課題資助(2015AA020102)

      2016-12-03)

      猜你喜歡
      語句向量資料
      向量的分解
      聚焦“向量與三角”創(chuàng)新題
      Party Time
      PAIRS & TWOS
      JUST A THOUGHT
      重點:語句銜接
      精彩語句
      向量垂直在解析幾何中的應用
      向量五種“變身” 玩轉圓錐曲線
      如何搞定語句銜接題
      語文知識(2014年4期)2014-02-28 21:59:52
      渝北区| 达日县| 稻城县| 珲春市| 蚌埠市| 红安县| 天台县| 沂源县| 嘉禾县| 安丘市| 定边县| 略阳县| 东至县| 泉州市| 海伦市| 青浦区| 泾源县| 大埔区| 新郑市| 田林县| 清远市| 广东省| 阜康市| 浏阳市| 溧阳市| 金坛市| 洛扎县| 西乡县| 密云县| 琼中| 镶黄旗| 利津县| 团风县| 康乐县| 英德市| 会宁县| 镇远县| 黄陵县| 响水县| 连江县| 桐柏县|