R语言快速绘制多因素回归分析森林图(1)

森林图在论文中很常见,多用于表示多因素分析中的变量与结果变量的比值效应,可以用图示的方法比较直观的绘制出来,本期介绍两种快速绘制多因素回归分析森林图方法,比较适合新手,可以快速出图。
R语言快速绘制多因素回归分析森林图(1)_第1张图片
继续使用我们的乳腺癌数据(公众号回复:乳腺癌可以获得数据),首先把数据和包导入

library(foreign)
library(survival)
library("survminer")
bc <- read.spss("E:/r/test/Breast cancer survival agec.sav",
                use.value.labels=F, to.data.frame=T)
bc <- na.omit(bc)

R语言快速绘制多因素回归分析森林图(1)_第2张图片
我们先来看看数据:
age表示年龄,pathsize表示病理肿瘤大小(厘米),lnpos表示腋窝淋巴结阳性,histgrad表示病理组织学等级,er表示雌激素受体状态,pr表示孕激素受体状态,status结局事件是否死亡,pathscat表示病理肿瘤大小类别(分组变量),ln_yesno表示是否有淋巴结肿大,time是生存时间,后面的agec是我们自己设定的,不用管它。
有部分变量为分类变量,我们先把它转换成因子

bc$er<-as.factor(bc$er)
bc$pr<-as.factor(bc$pr)
bc$ln_yesno<-as.factor(bc$ln_yesno)
bc$histgrad<-as.factor(bc$histgrad)

下面建立COX回归方程

f1<- coxph(Surv(time, status) ~ age + histgrad+
             pathsize+ er + pr + ln_yesno, data=bc)

其他的什么解析模型,绘制生存曲线,PH假设我就不做了,懒得凑字数了,直接进入主题
第一种方法是使用survminer包自带的ggforest函数直接绘图,非常简单

ggforest(f1)

R语言快速绘制多因素回归分析森林图(1)_第3张图片
第二种方法是使用survivalAnalysis包,看名字就知道这个包只能绘制cox回归多因素分析的森林图

library(survivalAnalysis)
library(magrittr)
library(dplyr)

这个包自带了一个多因素回归分析的analyse_multivariate函数,用它来拟合模型,这里注意一下,这个函数是用逗号分隔的,不是用加号

res<-analyse_multivariate(data=bc,vars(time, status),
                          vars(age, histgrad,pathsize, er,pr,ln_yesno))
res

R语言快速绘制多因素回归分析森林图(1)_第4张图片
对于结果可靠性不用担心,这个函数也是内部调用coxph函数来分析的,直接绘图

forest_plot(res)

R语言快速绘制多因素回归分析森林图(1)_第5张图片
这两个函数绘制的森林图结果相同,还可以进行一下微调,我这里就不演示了。这两个函数出图美观性稍微查了点,但是胜在简单,适合初学者,下期再介绍一下复杂点的森林图。

你可能感兴趣的:(R语言,科研绘图,r语言,回归,开发语言)