随机森林需要分训练集测试集吗_肠道微生物诊断慢性肾病随机森林分析文献复现...

本文介绍了随机森林在分类问题中的应用,详细讨论了模型构建过程中的注意事项,包括参数优化和准确性评估,通过ROC曲线与AUC值展示了模型的性能。
摘要由CSDN通过智能技术生成
肾脏的主要功能是保持体内平衡,包括酸碱平衡,水平衡,血压调节和葡萄糖稳态在内的功能需要肾脏进行精确的协调和调节。全球大约9%的人口正在遭受慢性肾脏疾病。近年来,研究表明肠道菌群和慢性肾病(CKD)相关,已有研究表明肠道菌群代谢的一些有毒副产品如氧化三甲胺(TMAO)甲酚硫酸酯(PCS),硫酸吲哚酚(IS)等会进入血液进而引起慢性肾病。
d09e5a4e736dfbea6351b34803d21228.png 国内团队:浙江大学医学院附属第一医院的李兰娟院士团队与郑州大学附属第一医院的余祖江团队、刘章锁团队及吴歌。Advanced Science[IF:15.84]  DOI: 10.1002/advs.202001936 研究概述:该研究从中国郑州和杭州收集健康人与CKD患者的粪便样本共520份,通过微生物16S rRNA基因高通量测序,并用现在十分火热的 机器学习 的方法成功找到5个OTU可作为CKD的诊断标志物,可区分患者与对照AUC值达到0.9887。下面来解释一下作者是如何设计实验和分析的: 实验设计:作者在郑州和杭州两地收集健康和CKD患者的粪便样本,通过数据质控最终在郑州收集到273(健康HCs)和159(CKD患者)样本,在杭州收集57份CKD样本。作者将这些样本分成三份分别作为随机森林分析的训练(discovery),测试(validation),独立验证预测(independet)数据集。 616fa6db2218073d8caa47fb5ad320ca.png

结果解读:

通过alpha和beta多样性分析发现,CKD患者的肠道菌群多样性显著降低,且CKD患者的肠道菌群结构与正常人差异显著; ca7558fb8ed41fac912875d2c36b0876.png 属水平物种差异比较发现:CKD患者Klebsiella属和Enterobacteriaceae科显著富集,而Blautia属和Roseburia属丰度降低。 f979c9f566d2837507bb8c71473b575c.png 随机森林分析(不懂随机森林: 点击 ):在训练数据集中构建模型用于对CKD患者和健康人进行分类,最终找到5个OTU作为biomarker可以准确预测CKD患者(下图a),预测指数POD在健康和患者中显著差异图b,ROC曲线分析预测准确性在训练数据集AUC 达0.9887 图c。该模型在测试数据集和独立验证数据集中都有很好的预测准确性(图d e f),说明有很好的普适性。 974c8f34f60564e6a6eed7265e846cbe.png 总结: 本文实验设计清晰,简单明了,纯生信分析能发到15分的文章,小编觉得文章的最大的亮点在于使用了当下热门的机器学习(随机森林)的方法,并且用到了三批数据反复验证,最终,找到与CKD预测相关的biomarker。 这里小编下载了这篇文章中的部分数据,复现了一下文章中的随机森林分析结果,附带代码分享给大家:

1.随机森林分析注意事项

随机森林分析建议分组内样品至少30个以上,样品数太少影响准确性。随机森林分析,一般将数据划分为训练数据集(train data)和测试数据集(test or validate data),训练数据集用于构建预测模型,测试集用于查看模型的准确性。
如果想知道模型的普适性,应再增加独立验证数据(independent)集,以评估模型预测的普适性。

2.加载需要的包


#设置镜像,
local({r "repos")
r["CRAN"] "http://mirrors.tuna.tsinghua.edu.cn/CRAN/"
options(repos=r)})

# 依赖包列表安装与加载:
package_list "ggplot2","RColorBrewer","randomForest","caret", "pROC","dplyr","ggrepel")

# 判断R包加载是否成功来决定是否安装后再加载
for(p in package_list){
if(!suppressWarnings(suppressMessages(require(p, character.only = TRUE, quietly = TRUE, warn.conflicts = FALSE)))){
install.packages(p, warn.conflicts = FALSE)
suppressWarnings(suppressMessages(library(p, character.only = TRUE, quietly = TRUE, warn.conflicts = FALSE)))
}
}


3.随机森林之分类(classification)

3.1数据读取和建立模型
################################################################################################读入物种丰度表格
otutable"data/feature_table.txt",sep="\t",header = TRUE,check.names=FALSE,comment.char="",row.names= 1)
otutable[1:5,1:5]
##       SRR10028875 SRR10028876 SRR10028877 SRR10028878 SRR10028879
## ASV_1 0 0 9 0 34
## ASV_2 0 0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值