本文首發(fā)于公眾號:醫(yī)學(xué)和生信筆記
醫(yī)學(xué)和生信筆記,專注R語言在臨床醫(yī)學(xué)中的使用,R語言數(shù)據(jù)分析和可視化。主要分享R語言做醫(yī)學(xué)統(tǒng)計學(xué)、meta分析、網(wǎng)絡(luò)藥理學(xué)、臨床預(yù)測模型、機器學(xué)習(xí)、生物信息學(xué)等。
前言
本期開始將推送使用R語言進行醫(yī)學(xué)統(tǒng)計學(xué)的相關(guān)內(nèi)容。示例中用到的書籍電子版及配套數(shù)據(jù)已上傳到QQ群,需要的加群下載即可。
使用R語言進行統(tǒng)計學(xué)是我學(xué)習(xí)R語言最開始的初衷,沒想到從此一發(fā)不可收拾,打開了新世界的大門。這個系列也是我最開始學(xué)習(xí)R語言時的筆記。希望對大家有幫助。
主要是用R語言復(fù)現(xiàn)課本中的例子。我使用的課本是孫振球主編的《醫(yī)學(xué)統(tǒng)計學(xué)》第4版,封面如下:

我的研究生課程并沒有把整本書的全部學(xué)完,只學(xué)習(xí)了其中的一部分,因此本系列也是只針對其中學(xué)過的部分進行復(fù)現(xiàn)。另外對于統(tǒng)計描述部分也不在這里探討。
t檢驗
t檢驗主要適用于1組或2組的均數(shù)的比較,要求數(shù)據(jù)符合正態(tài)性和方差齊性。關(guān)于t檢驗的本質(zhì)問題本文不做過多探討,只是學(xué)習(xí)如何用R語言實現(xiàn)t檢驗!
在R中進行t檢驗非常簡單,就是 t.test()函數(shù),不管是單樣本、兩樣本都是這一個函數(shù)。使用R語言進行統(tǒng)計學(xué)比SPSS好的一點是,當(dāng)你需要使用某種檢驗時,直接打出這個檢驗的名字一般就會跳出來相關(guān)的函數(shù),而我在學(xué)習(xí)使用SPSS進行各種統(tǒng)計檢驗時,可能更多的是關(guān)注如何點點點(鼠標(biāo)點擊菜單),不利于記住哪種情況使用什么方法。
單樣本t檢驗
使用課本例3-5的數(shù)據(jù)。
首先是讀取數(shù)據(jù),可以自己錄入,也可以使用課本光盤里的數(shù)據(jù),我這里直接使用了光盤里的數(shù)據(jù)。
# 使用foreign包讀取SPSS數(shù)據(jù)
library(foreign)
df <- read.spss('E:/各科資料/醫(yī)學(xué)統(tǒng)計學(xué)/研究生課程/3總體均數(shù)的估計與假設(shè)檢驗18-9研/例03-05.sav',to.data.frame = T)
head(df)
數(shù)據(jù)一共兩列,第1列是編號,第二列是血紅蛋白值,一共有36行。
進行單樣本t檢驗,并與140進行比較:
st <- t.test(df$hb,mu=140,alternative = 'two.sided') # 雙側(cè)檢驗
st
One Sample t-test
data: df$hb
t = -2.1367, df = 35, p-value = 0.03969
alternative hypothesis: true mean is not equal to 140
95 percent confidence interval:
122.1238 139.5428
sample estimates:
mean of x
130.8333
結(jié)果顯示t=7.926,自由度df=9,p<0.001,結(jié)果和課本一致。
兩樣本t檢驗
使用課本例3-7的數(shù)據(jù)。
首先是讀取數(shù)據(jù)。
library(foreign)
df <- read.spss('E:/各科資料/醫(yī)學(xué)統(tǒng)計學(xué)/研究生課程/3總體均數(shù)的估計與假設(shè)檢驗18-9研/例03-07.sav',to.data.frame = T)
df$group <- c(rep('阿卡波糖',20),rep('拜糖平',20))
head(df)
一共有3列40行,第1列是編號,第2列是血糖值,第3列是組別(阿卡波糖組和拜糖平組,每組20個人)。
進行兩樣本t檢驗:
tt <- t.test(x ~ group, data = df, paired = F, var.equal = T) # 可以看到與配對樣本t檢驗的寫法稍有不同,其實都可以,主要是看數(shù)據(jù)結(jié)構(gòu)
tt
Two Sample t-test
data: x by group
t = -0.64187, df = 38, p-value = 0.5248
alternative hypothesis: true difference in means between group 阿卡波糖 and group 拜糖平 is not equal to 0
95 percent confidence interval:
-2.326179 1.206179
sample estimates:
mean in group 阿卡波糖 mean in group 拜糖平
2.065 2.625
結(jié)果顯示t=-0.64187,自由度df=38,p=0.5248,結(jié)果和課本一致。
以上就是使用R語言進行t檢驗的例子,希望對大家有幫助,如果有任何問題歡迎評論區(qū)留言或直接與我聯(lián)系。
本文首發(fā)于公眾號:醫(yī)學(xué)和生信筆記
醫(yī)學(xué)和生信筆記,專注R語言在臨床醫(yī)學(xué)中的使用,R語言數(shù)據(jù)分析和可視化。主要分享R語言做醫(yī)學(xué)統(tǒng)計學(xué)、meta分析、網(wǎng)絡(luò)藥理學(xué)、臨床預(yù)測模型、機器學(xué)習(xí)、生物信息學(xué)等。