作者:修空调 审核:Listenlii 前言 最近在Listenlii的科研交流群提到了一个函数vegan::taxa2dist,可以直接根据物种分类单元信息计算距离,进而建树,这个功能我是第一次听说。 也可以是别的分类层级 参数 x: 分类信息矩阵,可以参考vegan包的实例数据dune.taxon。 varstep: 是否针对不同的分类层级采用varstep法设定不同系数。系数的作用下面会讲。
(2,1))) # p / tab2 # 调布局 ANOSIM和PERMANOVA的pairwise analysis声明:“Pairwise tests are not possible in vegan We don’t provide that in vegan and have no plans to provide this in the future.” (cited by Jari Oksanen, author of anosim and Adonis{vegan} in R)https://stat.ethz.ch/pipermail/r-sig-ecology https://stats.stackexchange.com/questions/188519/adonis-in-vegan-order-of-variables-or-use-of-strata noredirect=1 https://github.com/vegandevs/vegan/issues/229 https://stats.stackexchange.com/questions/
Ad vegan excepteur butcher vice lomo. Ad vegan excepteur butcher vice lomo. Ad vegan excepteur butcher vice lomo. Ad vegan excepteur butcher vice lomo. Ad vegan excepteur butcher vice lomo.
Ad vegan excepteur butcher vice lomo. Ad vegan excepteur butcher vice lomo. Ad vegan excepteur butcher vice lomo. Ad vegan excepteur butcher vice lomo. Ad vegan excepteur butcher vice lomo.
distance matrix (or distance object) as input: ## + stats::cmdscale() ## + MASS::sammon() ## + vegan ::metaMDS() ## + ape::pcoa() ## + smacof::mds() ## + vegan::wcmdscale() ## + ecodist::pco
library(vegan) # 数据的解释和准备见前面的推文 data(dune) data(dune.env) A1在前,Moisture在后。 adonis和adonis2的区别 vegan包提供了两个函数adonis和adonis2来进行PERMANOVA分析,这两个函数有什么区别呢? rstats/adonis/ https://chrischizinski.github.io/rstats/ordisurf/ https://www.rdocumentation.org/packages/vegan https://stats.stackexchange.com/questions/188519/adonis-in-vegan-order-of-variables-or-use-of-strata noredirect=1 https://github.com/vegandevs/vegan/issues/229 https://stats.stackexchange.com/questions/
对于函数使用,比如我们要看vegan包diversity这个函数的用法,方法如下: #1.vegan包的函数都可以用?vegan找到。注意所有问号必须是英文的问号。 ? vegan # 右下角的Help会出来vegan里面所有的函数信息,找到你需要的即可。 #2. 直接?diversity ?
sn=f95418a311e639704e9848545efc7fd7&scene=21#wechat_redirect https://chrischizinski.github.io/rstats/vegan-ggplot2 rstats/adonis/ https://chrischizinski.github.io/rstats/ordisurf/ https://www.rdocumentation.org/packages/vegan adonis https://www.jianshu.com/p/dfa689f7cafd https://stats.stackexchange.com/questions/312302/adonis-in-vegan-order-of-variables-non-nested-with-one-degree-of-freedom-for https://stats.stackexchange.com/questions/188519/adonis-in-vegan-order-of-variables-or-use-of-strata noredirect=1 https://github.com/vegandevs/vegan/issues/229 https://stats.stackexchange.com/questions/
Ad vegan excepteur butcher vice lomo. Ad vegan excepteur butcher vice lomo. Ad vegan excepteur butcher vice lomo.
Ad vegan excepteur butcher vice lomo. Ad vegan excepteur butcher vice lomo. Ad vegan excepteur butcher vice lomo.
我们在扩增子培训中学到了两种以上的方式计算Alpha多样性,比如用vegan包去计算6种Alpha多样性、usearch计算14种Alpha多样性等。 方法一:vegan包计算Alpha多样性 suppressWarnings(suppressMessages(library(vegan))) otu_rare=read.table("otutab_rare.txt 由于usearch并未开源,所以我们主要来看vegan的estimateR函数的报错原因function accepts only integers (counts),表明该函数只接受整数,并且函数的文档也指明
accounting for the geographic distance) with significance determined using 999 permutations in the R package vegan87 %>% as.dist() -> geo.dist 这里提供的数据是一个对称矩阵,读取进来以后是一个数据框,最后转换成了一个下三角矩阵用于 mantel函数的输入 做mantel检验的函数 vegan ::mantel(fst.adaption.dist,geo.dist,permutations = 999) vegan::mantel(fst.neutral.dist,geo.dist,permutations = 999) 输出结果和论文中的一致 做partial mantel检验 vegan::mantel.partial(fst.adaption.dist,env.dist,geo.dist,permutations = 999) vegan::mantel.partial(fst.neutral.dist,env.dist,geo.dist,permutations = 999) 这个结果和论文中的也一致 作图代码
mantel test一般用距离矩阵来计算,vegan的mantel输入只能是距离矩阵。如果想用向量做mantel ,可以用ecodist包做,输入数据可以是向量的形式。 我测试了一下发现r<=0时对应的P值和vegan中mantel结果的P值是一致的。因此可以用r<=0对应的P值,这也可以反推出vegan中mantel的原假设也是r<=0。
两矩阵相关性计算 4.1 加载包和示例数据 library(vegan) #> 载入需要的程辑包:permute #> 载入需要的程辑包:lattice #> This is vegan 2.5-7 masked from 'package:base': #> #> intersect, setdiff, setequal, union data("varechem", package = "vegan ") data("varespec", package = "vegan") 5.2 进行mantel test并新增连线数据 mantel <- mantel_test(varespec, varechem
接下来我们看下在R中如何去实现,首先安装ape包和vegan包,联合使用才能达到最终的目的。包的安装我们就不赘述了,其在CRAN平台,直接install.packages()。 首先是数据的导入,我们利用vegan自带的数据dune。具体的数据集的构成大家可以直接在包的信息中去看。接下来我们首先基于dune数据构造距离矩阵,需要用到的函数vegdist。 Upper 是否显示对角线以上的值 library(vegan) data(dune) data(dune.env) dune.dist <- vegdist(dune)#构造距离矩阵。 ? 为了进一步完善我们的可靠性,我们还可以利用vegan中的ANOSIM相似性分析是一种非参数检验,用来检验组间(两组或多组)差异是否显著大于组内差异,从而判断分组是否有意义。
而且不同物种的敏感环境因子不同,因此基于正态分布的参数检验难以满足分析需要,要进行多元非参数检验(non-parametric multivariate statistical tests)来计算显著性,R语言vegan 在R中可以使用vegan包中的mrpp()函数进行分析,其默认距离为distance="euclidean",可以先计算距离矩阵再进行分析,示例如下: #读取物种和环境因子信息 data=read.csv 1] #筛选高丰度物种 means=apply(data, 1, mean) otu=data[names(means[means>10]),] otu=t(otu) #计算距离矩阵 library(vegan
>library(vegan) #Usage #renyi(x, scales = c(0, 0.25, 0.5, 1, 2, 4, 8, 16, 32, 64, Inf),hill = FALSE) 得找个时间把vegan所有的功能好好看一下。 Reference:https://en.wikipedia.org/wiki/Rényi_entropyhttps://rdrr.io/rforge/vegan/src/R/renyi.R
20220420/nature/inMBss.tsv", row.names = 1, header=T) dim(inMBss) 使用vegan 包做PCoA分析 library(vegan) distMatrix <- vegdist(inMBsss,method = "bray") pCoa <- cmdscale(distMatrix,
分析过程如下: > library(vegan) 载入需要的程辑包:permute 载入需要的程辑包:lattice This is vegan 2.4-5 Warning message: 程辑包‘vegan
两矩阵相关性计算 4.1 加载包和示例数据 library(vegan) #> 载入需要的程辑包:permute #> 载入需要的程辑包:lattice #> This is vegan 2.5-7 data masked from 'package:base': #> #> intersect, setdiff, setequal, union data("varechem", package = "vegan ") data("varespec", package = "vegan") 5.2 进行mantel test并新增连线数据 mantel <- mantel_test(varespec, varechem