临床系列R包 | 第2期. autoReg自动生成回归分析结果

文摘   教育   2024-11-27 20:02   北京  
BE声明学写文章②



 往期回顾

   REVIEWS  


1)临床系列R包 | 第1期. 一个函数快速绘制基线表


本系列推送旨在为临床科研人提供临床研究中常用R包系统性学习分享。


在临床研究中,回归分析和生存分析是揭示变量关系的重要统计工具autoReg 包通过自动生成线性回归、逻辑回归和生存分析的结果表,帮助科研人员高效探索变量之间的关联。它能够简化分析过程,快速输出结果,便于科研人员解读数据并撰写报告。本期内容将介绍 autoReg 包的回归分析功能及主要参数设置,帮助大家在多变量分析中高效得出结果。

MASCU

R Package


本期演示数据将通过 R 语言自行模拟,帮助大家独立掌握数据处理的完整流程。




01

tableone包的基本功能


autoReg 包的核心函数 autoReg() 适用于以下三种主要分析:

1. 线性回归:用于分析连续型因变量,通过建立线性模型探讨自变量(如年龄、BMI)对因变量的影响程度。

2. 逻辑回归:适用于二分类因变量,帮助揭示自变量(如吸烟)与分类结果(如是否患病)之间的关联。

3. 生存分析:主要用于研究事件发生的时间及其影响因素,常用于评估不同变量对患者生存时间或发生特定事件风险的影响。


autoReg()的重要参数包括:uni为TRUE指输出单因素模型结果;multi为TRUE指输出多因素模型结果;threshold可控制进入多因素分析的变量的P值,默认为0.2,1代表全部纳入;final为TRUE指输出逐步回归模型结果。





02

线性回归分析示例


在以下代码中,我们通过线性回归分析探索不同自变量对连续因变量(如血压)的影响:


library(autoReg)set.seed(123)sample_data <- data.frame(  age = round(runif(200, 30, 80)),  sex = sample(c("Male", "Female"), 200, replace = TRUE),  BMI = round(rnorm(200, 25, 4), 1),  blood_pressure = round(rnorm(200, 120, 15), 1),   smoking_status = sample(c(0, 1), 200, replace = TRUE))sample_data$smoking_status <- as.factor(sample_data$smoking_status)
# 线性回归分析model_lm <- lm(blood_pressure ~ age + sex + BMI + smoking_status, data = sample_data)result_lm <- autoReg(model_lm)print(result_lm, uni=TRUE, threshold=1, final=FALSE)write.csv(result_lm, file = "linear_regression_results.csv")





03

逻辑回归分析示例


逻辑回归用于分析自变量对二分类因变量的影响,例如分析患者的吸烟状态(吸烟者或非吸烟者)与其他因素的关系:


# 还用上述模拟数据# 逻辑回归分析model_logistic <- glm(smoking_status ~ age + sex + BMI + blood_pressure, data = sample_data, family = binomial)result_logistic <- autoReg(model_logistic, uni=TRUE, threshold=1, final=FALSE)print(result_logistic)write.csv(result_logistic, file = "logistic_regression_results.csv")




04

生存分析示例


生存分析用于研究自变量对时间至事件(如死亡或疾病复发)间隔的影响。例如分析患者的生存状态及生存时间与其他因素的关系。


#重新构建新的示例数据library(survival)library(autoReg)set.seed(123)survival_data <- data.frame(  time = round(rexp(200, rate = 0.1), 1),  status = sample(0:1, 200, replace = TRUE),   age = round(runif(200, 30, 80)),  sex = sample(c("Male", "Female"), 200, replace = TRUE),  BMI = round(rnorm(200, 25, 4), 1))# 生存分析model_survival <- coxph(Surv(time, status) ~ age + sex + BMI, data = survival_data)result_survival <- autoReg(model_survival, uni=TRUE, threshold=1, final=FALSE)print(result_survival)write.csv(result_survival, file = "survival_analysis_results.csv")




05

参考文档与相关指南链接


https:// cran. r-project. org / web / packages /autoReg / index.html
autoReg 包的 autoReg() 函数为生成回归分析表提供了便捷的途径,初学者只需简单设置即可快速完成多种回归分析,为数据关系的分析与解读打下基础。
希望本期内容帮助大家掌握 autoReg 包在回归分析中的使用技巧,欢迎留言告知希望学习的其他 R 包,我们一起学习进步!


今天的分享到这里就结束啦,你学会了吗?
大家对于推送内容有任何问题或建议可以在公众号菜单栏“更多--读者的话” 栏目中提出,我们会尽快回复!

期待已久~临床科研交流群来啦!


(欢迎大家入群交流~
若群满,请添加下方微信,备注:“进临床科研与统计_互助交流群” )





写在最后


“观科研”(点击进一步了解我们吧)是由一群北京协和医学院(清华大学医学部)的博士开创的公众号,初心是让医学科研有迹可循,帮助一线的医学科研人员更快地成长,希望大家支持与关注!

如果大家对分享医学科研知识感兴趣,特别欢迎加入我们,期待与您的相遇相识相知,也非常欢迎大家自主投稿,如果您有需要分享的内容或对我们有任何建议,可通过后台留言、
公众号菜单栏
“更多—读者的话”栏目进一步了解)或发送邮件至mascu_forever@163.com与我们交流并留下个人联系方式,我们会及时与您联系。

如果您觉得我们长期的干货推送对您的科研工作有所帮助,可以在合适的机会致谢(包括但不限于SCI论文、毕业论文等),格式如下:
 The authors thank the support of Skill Learning from Kaixin Doctor and MASCU (Medical Association with Science, Creativity, and Unity), Inc, Shenzhen, China (mascu_forever@163.com).


【大家的支持,是我们持续更新的动力!】


Pay attention!
微信公众号的推送规则发生改变(不再按照时间顺序来显示),如果没有将“观科研”设置为星标,你就可能错失里面的精彩推送。


点击“在看”,可参与讨论哦!

图文:睿观

审核:美观

编辑:云观

编审:静观


观科研
让医学科研有迹可循
 最新文章