R语言:microeco:一个用于微生物群落生态学数据挖掘的R包,第六:trans_nullmodel class

近几十年来,系统发育分析和零模型的整合通过增加系统发育维度,更有力地促进了生态位和中性影响对群落聚集的推断。trans_nullmodel类提供了一个封装,包括系统发育信号、beta平均成对系统发育距离(betaMPD)、beta平均最近分类单元距离(betaMNTD)、beta最近分类单元指数(betaNTI)、beta净相关指数(betaNRI)和基于bray - curtis的Raup-Crick (rbray)的计算。系统发育信号分析方法基于地幔相关图,与其他方法相比,系统发育信号的变化直观、清晰。betaMNTD和betaMPD的算法经过优化,比picante包中的算法更快。rbray和betaNTI(或betaNRI)的组合可以用来推断在特定假设下支配群落聚集的每个生态过程的强度。这可以通过函数cal_process()来解析每个推断进程的百分比来实现。我们首先检查系统发育信号。

> t1 <- trans_nullmodel$new(dataset, taxa_number = 1000, add_data = env_data_16S)

> t1$cal_mantel_corr(use_env = "pH")

> t1$plot_mantel_corr()

betaNRI(ses.betampd)用于显示"基础"系统发育转换, 与betaNTI相比,它可以捕获更多与深层系统发育相关的周转信息。

值得注意的是,随着几十年的发展,存在许多零模型。

在trans_nullmodel类中,我们随机化了物种的系统发育亲缘关系

这种洗牌方法固定了物种α-多样性和β-多样性的观察水平,

以探索观察到的系统发育转换是否与物种间系统发育亲缘关系随机的零模型有显著差异。

> t1$cal_ses_betampd(runs=500, abundance.weighted = TRUE)

add betaNRI matrix to beta_diversity list

> datasetbeta_diversity\[\["betaNRI"\]\] \<- t1res_ses_betampd

create trans_beta class, use measure "betaNRI"

> t2 <- trans_beta$new(dataset = dataset, group = "Group", measure = "betaNRI")

transform the distance for each group

> t2$cal_group_distance()

plot the results

> g1 <- t2$plot_group_distance(distance_pair_stat = TRUE)

> g1 + geom_hline(yintercept = -2, linetype = 2) + geom_hline(yintercept = 2, linetype = 2)

这期跑的时间有些久,本来还想一起介绍trans_network class,后来发现trans_network class有的函数跑的更久,所以下期再介绍trans_network class。

相关推荐
LabEx15 小时前
科研数据可视化核心技术:基于 AI 与 R 语言的热图、火山图及网络图绘制实践指南
人工智能·信息可视化·r语言·r语言绘图·乐备实·labex·科研数据绘图
Jet450516 小时前
第100+43步 ChatGPT学习:R语言实现特征选择曲线图
学习·chatgpt·r语言
一条破秋裤19 小时前
一份多光谱数据分析
笔记·数据挖掘·数据分析
cal_20 小时前
数据分析中的拉链表解析
大数据·数据挖掘·数据分析
九章云极AladdinEdu20 小时前
华为昇腾NPU与NVIDIA CUDA生态兼容层开发实录:手写算子自动转换工具链(AST级代码迁移方案)
人工智能·深度学习·opencv·机器学习·华为·数据挖掘·gpu算力
Chef_Chen21 小时前
从0开始学习R语言--Day40--Kruskal-Wallis检验
开发语言·学习·r语言
王小王-12321 小时前
基于Python的程序员数据分析与可视化系统的设计与实现
python·数据挖掘·数据分析·招聘数据分析·程序员数据分析·招聘薪资数据分析·智联招聘可视化
Deng9452013141 天前
基于数据挖掘的课程推荐系统研究
人工智能·数据挖掘·数据预处理·基于用户的协同过滤·文本特征提取
quant_19861 天前
R语言如何接入实时行情接口
开发语言·经验分享·笔记·python·websocket·金融·r语言
kngines1 天前
【力扣(LeetCode)】数据挖掘面试题0002:当面对实时数据流时您如何设计和实现机器学习模型?
机器学习·数据挖掘·面试题·实时数据