天天看點

手把手教你使用R語言做出一篇20分SCI文章的互動效應表(p for Interaction)

高分SCI中幾乎必備有互動效應分析表,通常為文章的表三或者表五,上一篇文章我們已經講過怎麼使用SPSS做出互動效應分析,今天我們R手把手實戰做出下圖這篇20分的文章的互動效應表。

手把手教你使用R語言做出一篇20分SCI文章的互動效應表(p for Interaction)

我們先要看他是怎麼分析的,他把血小闆進行4分組和2分組後,在進行血小闆和葉酸的互動作用分析,從各個層面分析了血小闆對葉酸的影響,是以别人能發高分不是沒有原因的。在模型中,他還使用了調整模型和未調整模型進行比較,支援自己的證據力度。我們還是沿用上次的資料來進行分析

把資料導入并檢視資料

library(foreign)

library(survival)

bc <- read.spss(“E:/r/Breast cancer survival agec.sav”,

use.value.labels=F, to.data.frame=T)

bc <- na.omit(bc)

head(bc)

手把手教你使用R語言做出一篇20分SCI文章的互動效應表(p for Interaction)

假如我們研究的是乳腺癌各個pr(孕激素受體狀态)和死亡的關系,我們想知道pr(孕激素受體狀态)和年齡是否産生互動作用。

先使用CUT函數進行分割

age2<-cut(bc$age,breaks=c(0,40,60,100),include.lowest=T,
labels = c(1,2,3))#把age劃分為0-20,20-60,60到100這樣3個區間
dd<-cbind(bc,age2)#把變量加入表格
           
手把手教你使用R語言做出一篇20分SCI文章的互動效應表(p for Interaction)

剛才是3分組的,再來一個2分組的

Age3<-cut(bc$age,breaks=c(0,40, 100),include.lowest=T,
          labels = c(1,2))
df<-cbind(bc,age2)
           
手把手教你使用R語言做出一篇20分SCI文章的互動效應表(p for Interaction)

然後通過函數subset和if函數設定子集,每個分類變量都要設定一個子集

我們先來做3分類變量的age2,它的3個标簽是,1,2,3,簡單設定一下

目前age2是因子變量,我們把它轉換成數字的

n.age2<-as.numeric(as.character(df$age2))
df<-cbind(df,n.age2)
           

然後再對它取其中是1的子集

手把手教你使用R語言做出一篇20分SCI文章的互動效應表(p for Interaction)

得出這個子集後就對他進行分析

先來個廣義線性方程得個回歸系數,

f1<-glm(status ~pr,family = binomial,)
summary(f1)
           
手把手教你使用R語言做出一篇20分SCI文章的互動效應表(p for Interaction)

計算OR和95%CI

exp(confint(f1))
exp(coef(f1))
           
手把手教你使用R語言做出一篇20分SCI文章的互動效應表(p for Interaction)

由此已經算出年齡0-40歲的亞組的OR,95%CI和P值,同理可以算出其他的組

現在我們來做2分組的互動效應

互動效應就不能拿子集了,要用原來的資料

f2<-glm(status ~pr+age3,family = binomial,data =df)
summary(f2)
           
手把手教你使用R語言做出一篇20分SCI文章的互動效應表(p for Interaction)

求互動效應其實很簡單,加入一個a*b就可以了,箭頭所示就是互動的P值了

手把手教你使用R語言做出一篇20分SCI文章的互動效應表(p for Interaction)

調整模型就是在模型中加入其他變量就可以了,我這裡就調整了er,其實做出來用到R的代碼并不難,關鍵是你要思路清晰,明白它是怎麼做出來的,

手把手教你使用R語言做出一篇20分SCI文章的互動效應表(p for Interaction)

動動小手關注一下吧,更多精彩文章盡在零基礎說科研

手把手教你使用R語言做出一篇20分SCI文章的互動效應表(p for Interaction)