shuiyue的个人博客分享 http://blog.sciencenet.cn/u/shuiyue

博文

计算群落多样性的R代码

已有 6032 次阅读 2018-12-10 21:09 |系统分类:科研笔记

计算群落多样性的R代码

原创: 杨预展 生态学文献分享 5天前

写在前面:

前几天贴了多样性的基本概念后,收到小朋友的后台留言,询问关于多样性的计算方法。老实说,现在软件满天飞,方法实在是非常多,SPSS,PRIMER,Past,R,等等,都可以做。网上的各种教程也是一抓一大把,甚至有很多在线版,只要输入数据,立刻可以得到结果。但是真正去网上搜索的时候,又很凌乱、分散,可操作性并不是很强。纠结了一下,贴出我自己常用的一些基本代码吧,简单又好用的。这些代码是在R语言里面使用的。我个人比较推荐R,开源,友好,快捷。希望更多人学习和使用R。我不太擅长这种文,所以方法类的并不会经常写。

几点注意事项:

1.  R是区分大小写的,贴代码时一定要仔细检查;

2. 导入数据的格式推荐csv

3. 原始数据格式最好是图1和图2所示,R默认样品为行,变量为列;

4. 若不是这种格式,可以使用t转换行列,下面也有写;

5.  本文代码可以直接复制粘贴,但还是建议自己写几遍,才能更理解;

6. 每一行代码里,没有空格,没有空格,没有空格!



图1. 物种数据

图2. 环境数据

准备

library(vegan)

 

spe<-read.csv("spe.csv",row.names=1)#输入物种数据

head(spe)#查看数据

spe_trans=t(spe)#行列转换

 

env<-read.csv("env.csv",row.names=1)#输入环境数据

head(env)

 

计算alpha多样性

香浓指数

Shannon<-diversity(spe)#计算Shannon指数

Shannon#查看数据,注意大小写

 

辛普森指数

Inv_Simpson<-diversity(spe,"inv")#计算Inversed Simpson指数

Inv_Simpson

 

统计物种个数

S<-specnumber(spe)#统计每个样品内的物种个数

S

均匀度指数

Pielou_evenness<-Shannon/log(S)

Pielou_evenness

Simpson_evenness<-Inv_Simpson/S

Simpson_evenness

 

数据输出

report=cbind(Shannon, Inv_Simpson,Pielou_evenness, Simpson_evenness)

head(report)

write.table(report,file="alpha.txt",sep="\t",col.names=NA)#输出txt格式,拖进excel即可

 

计算beta多样性

基于丰度的原始数据的Bray-curtis距离矩阵

bray.dist<-vegdist(spe)#默认即为bray-curtis距离

或者

bray.dist<-vegdist(spe,method="bray")

head(bray.dist)#查看结果的前几行

write.table(as.matrix(bray.dist),file="bray.dist.txt",sep="\t",col.names=NA)

 

对数转换后的基于丰度的Bray-curtis距离矩阵

bray.dist.ln<-vegdist(log1p(spe))#此处是log1p(数字1

head(bray.dist.ln)

write.table(as.matrix(bray.dist.ln),file="bray.dist.ln.txt",sep="\t",col.names=NA)

 

基于有无(0, 1矩阵)的Jaccard距离矩阵

spe.jaccard<-vegdist(spe,"jac",binary=TRUE)#不用自己转换,binary=TRUE会实现自动转换

head(spe.jaccard)

write.table(as.matrix(spe.jaccard),file="spe.jaccard.txt",sep="\t",col.names=NA)

 

环境数据的Euclidean距离矩阵(欧式距离)

env.dist<-dist(scale(env))

write.table(as.matrix(env.dist),file="env.dist.txt",sep="\t",col.names=NA)




http://blog.sciencenet.cn/blog-313491-1150899.html

上一篇:朝花夕拾 | 生物多样性的全球分布模式
下一篇:NC | 适应性进化对表型可塑的逆转回复

0

该博文允许注册用户评论 请点击登录 评论 (3 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2021-10-21 07:23

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部