美文网首页临床课题/机器学习文章
一行代码展示回归模型结果森林图

一行代码展示回归模型结果森林图

作者: 北欧森林 | 来源:发表于2021-05-10 20:09 被阅读0次

    今天看到一个帖子,主要介绍forestmodel包,可以轻松制作回归模型结果森林图,图片简洁、美观大方,忍不住要分享一下。
    原帖地址:如何根据回归模型制作森林图?一行代码搞定!; 公众号为:R语言和统计

    1. 加载R包
    #install.packages("forestmodel")
    
    library(forestmodel)   # 森林图
    library(ggplot2)       # 使用到里面的数据集“msleep”
    library(dplyr)         # 数据处理
    library(survival)      # 生存分析
    
    1. 使用内置数据集msleep拟合线性回归模型
    # 拟合线性回归模型
    linear_model <- lm(sleep_total ~ brainwt + bodywt + sleep_rem + vore, data = msleep)
    
    # 森林图
    forest_model(linear_model)
    
    image.png
    1. 使用内置数据集lung拟合logistic回归模型
    # 数据预处理
    # 将lung做一些修改,再保存到mydata
    mydata <- lung %>%
      mutate(gender = factor(sex, labels = c("Male", "Female")), 
             status = factor(status))
    
    # 建立回归模型
    logit_model <- glm(status ~ age + gender + ph.ecog, data = mydata, family = "binomial")
    
    # 制作森林图
    forest_model(logit_model)
    
    image.png
    1. 使用内置数据集lung拟合cox回归模型
    # 数据预处理
    # 创建数据mydata1
    mydata1 <- lung %>%
      mutate(gender = factor(sex, labels = c("Male", "Female")))
    # 拟合生存分析模型
    surv_model <- coxph(Surv(time, status) ~ age + gender + ph.ecog, data = mydata1)
    # 制作森林图
    forest_model(surv_model)
    
    image.png
    1. 个性化美化
    forest_model(
      surv_model, 
      format_options = forest_model_format_options(colour = "steelblue",  # 修改颜色       
                                                   shape = 15,            # 改变形状
                                                   text_size = 3.8,       # 字体文本的大小
                                                   point_size = 6,        # 森林图中“方框”的大小
                                                   banded = TRUE),        # 如“FALSE”,可去掉森林图背景条带
      factor_separate_line = TRUE    # 如为分类变量,需换行;比如Male,Female与gender不在同一行。
    )
    
    image.png

    相关文章

      网友评论

        本文标题:一行代码展示回归模型结果森林图

        本文链接:https://www.haomeiwen.com/subject/tjzidltx.html