autoReg | 自动线性和逻辑回归和生存分析

autoReg | 自动线性和逻辑回归和生存分析

autoReg可以制作描述性统计汇总表,在各种回归模型中自动选择解释变量。支持线性模型、广义线性模型环比例风险模型。生成可发表的回归分析结果汇总表和图表。

#install.packages("devtools")
devtools::install_github("cardiomoon/autoReg")
library(autoReg)

基线特征描述统计

## 基线特征描述统计
library(moonBook) # 示例数据
data(acs)
library(dplyr)
ft=gaze(sex~.,data=acs) %>% myft()
ft
# library(rrtable)
# table2pptx(ft) #Exported table as Report.pptx
# table2docx(ft) #Exported table as Report.docx
5e8aea2295a1686495148a49f770439b.png

用两个或多个分组变量总结基线特征

gaze(sex+Dx~.,data=acs) %>% myft()
gaze(sex+DM+HBP~age,data=acs) %>% myft()

自动选择解释变量

可以做一个表格总结回归分析的结果。例如,对结肠癌数据进行逻辑回归分析。

library(survival)   # For use of data colon
data(cancer)  

fit=glm(status~rx+sex+age+obstruct+perfor+nodes,data=colon,family="binomial")
summary(fit)
autoReg(fit) %>% myft()

055586277074ace5ed52171430063916.png如果想要一个有更多解释的表,你可以用数字变量来做分类变量。

colon$status.factor=factor(colon$status,labels=c("Alive","Died"))
colon$obstruct.factor=factor(colon$obstruct,labels=c("No","Yes"))
colon$perfor.factor=factor(colon$perfor,labels=c("No","Yes"))
colon$sex.factor=factor(colon$sex,labels=c("Female","Male"))

fit=glm(status.factor~rx+sex.factor+age+obstruct.factor+perfor.factor+nodes,data=colon,family="binomial")
result=autoReg(fit) 
result %>% myft()
## setLabel()函数给变量名添加标签
colon$status.factor=setLabel(colon$status.factor,"Mortality")
colon$rx=setLabel(colon$rx,"Treatment")
colon$age=setLabel(colon$age,"Age(Years)")
colon$sex.factor=setLabel(colon$sex.factor,"Sex")
colon$obstruct.factor=setLabel(colon$obstruct.factor,"Obstruction")
colon$perfor.factor=setLabel(colon$perfor.factor,"Perforation")
colon$nodes=setLabel(colon$nodes,"Positive nodes")

fit=glm(status.factor~rx+sex.factor+age+obstruct.factor+perfor.factor+nodes,data=colon,family="binomial")
result=autoReg(fit) 
result %>% myft()
61cc6e01a99d6f202e034cc0dbe48949.png
# 如果不想在表中显示参考值,可以缩短表。
shorten(result) %>% myft()
ef2a9707a78f2878e229106ebf418b6f.png

添加单变量模型表和自动选择解释变量

可以将单变量分析的结果添加到表中。此时,autoReg()函数自动选择阈值(默认值0.2)以下的解释变量,并执行多变量分析。在本表中,解释变量的p值为性别。因子和年龄均高于缺省阈值(0.2),在多元模型中被排除。

autoReg(fit, uni=TRUE) %>% myft()
cd387cb73c279f56f51d2ee8f338ebeb.png

如果想在多元模型中包含所有解释变量,只需将阈值设置为1。

autoReg(fit, uni=TRUE,threshold=1) %>% myft()
ff5adf522d5bd8ea1545aff5dc147d71.png

可以通过逐步的向后消除来选择变量并做出最终的模型。

autoReg(fit, uni=TRUE,threshold=1, final=TRUE) %>% myft()
79b409864e0ead56e1a9e4535cf5c0ea.png

在图表中总结回归模型的结果

x=modelPlot(fit)
x
# plot2pptx(print(x)) ##Exported plot as Report.pptx
3d9590b3a4ba8e18f9185a55ddba89f0.png
modelPlot(fit,uni=TRUE,threshold=1,show.ref=FALSE)
5f2eadb188f1d0707929af746808820e.png

参考

GitHub - cardiomoon/autoReg: R package autoReg

木舟笔记2022年度VIP企划

关于木舟笔记2022年度VIP会员企划

权益:

  1. 2022年度木舟笔记所有推文示例数据及代码(含大部分2021年)。

  2. 木舟笔记科研交流群。

  3. 半价购买跟着Cell学作图系列合集(免费教程+代码领取)|跟着Cell学作图系列合集

收费:

99¥/人。可添加微信:mzbj0002 转账,或直接在文末打赏。

6f618f5400aefd151aa03d2ae40c4101.png

往期内容

  1. 跟着Nature学作图 | 配对哑铃图+分组拟合曲线+分类变量热图

  2. (免费教程+代码领取)|跟着Cell学作图系列合集

  3. 跟着Nat Commun学作图 | 1.批量箱线图+散点+差异分析

  4. 跟着Nat Commun学作图 | 2.时间线图

  5. 跟着Nat Commun学作图 | 3.物种丰度堆积柱状图

  6. 跟着Nat Commun学作图 | 4.配对箱线图+差异分析

  7. 跟着 Nat Med. 学作图 | GSVA+limma差异通路分析+发散条形图


7af6bb3cc5719a7380211db6e2040d94.png

猜你喜欢

转载自blog.csdn.net/weixin_45822007/article/details/123288418