快捷搜索:  汽车  科技

r语言中求偏度系数(R语言Jaccard和Bray-curtis相异系数)

r语言中求偏度系数(R语言Jaccard和Bray-curtis相异系数)还是以前面的OTU数据为例。Bray-Curtis vegdist(spe.’bary’)而Bray-curtis计算时,不仅考虑样本中物种的有无,而且还考虑不同物种的相对丰度。Jaccard和Bray-Curtis都可以用vegan包中的vegdist计算。具体计算命令如下所示:Jaccard vegdist(spe ’jac’ binary=’TRUE’)

Jaccard和Bray-curtis相异系数是生物信息分析中常用到的,它是计算物种相似性的基础。

通过计算相异系数,可以得到一个矩阵matrix,矩阵是后续做热图和聚类树的基础。


需要注意的是这两个相异系数的侧重点不一样。

Jaccard在分析时,只考虑样本中物种的有无,而不考虑丰度。

而Bray-curtis计算时,不仅考虑样本中物种的有无,而且还考虑不同物种的相对丰度。


Jaccard和Bray-Curtis都可以用vegan包中的vegdist计算。具体计算命令如下所示:

Jaccard vegdist(spe ’jac’ binary=’TRUE’)

Bray-Curtis vegdist(spe.’bary’)


还是以前面的OTU数据为例。

打开R语言,改为数据的工作路径

library(vegan) #载入vegan包

otu1<-read.csv('otu.csv') #读取数据

otu2<-otu1[1:105 1:16] #选择需要的行数和列数(由于16行以后为英文字母,所以我们选择16行之前的)

otu<-t(otu2) #将行数和列数进行转置

otu.ja<-vegdist(otu ’jac’ binary=’TRUE’) #计算jaccard

otu.bc<-vegdist(spe.’bary’) #计算bray-curtis

write.csv(as.matrix(otu.ja) ’otu.ja’) #将jaccard存为到文件夹里

write.csv(as.matrix(otu.bc) ’otu.bc’) #将bray-curtis存为’otu.bc’文件

拿到矩阵后,可以用矩阵做热图或聚类树。

r语言中求偏度系数(R语言Jaccard和Bray-curtis相异系数)(1)

r语言中求偏度系数(R语言Jaccard和Bray-curtis相异系数)(2)


下面是本次的计算代码,需要的拿走哈!

library(vegan)

otu1<-read.csv('otu.csv')

otu2<-otu1[1:105 1:16]

otu<-t(otu2)

otu.ja<-vegdist(otu 'jac' binary='TRUE')

otu.bc<-vegdist(otu 'bray')

write.csv(as.matrix(otu.ja) 'otuja1.csv')

write.csv(as.matrix(otu.bc) 'otubc1.csv')


需要注意的是,不同的包,计算的Jaccard和Bray-Curtis相异系数不一样。

用ade4包也可以计算相异系数。

感兴趣的,可以自己试一下。

猜您喜欢: