近几十年来,系统发育分析和零模型的整合通过增加系统发育维度,更有力地促进了生态位和中性影响对群落聚集的推断。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
> dataset$beta_diversity[["betaNRI"]] <- t1$res_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)