我有一些数据集,我想要计算其伽马多样性作为香农H指数。
示例数据集:
Site SpecA SpecB SpecC
1 4 0 0
2 3 2 4
3 1 1 1计算alpha分集的方法如下:
vegan::diversity(df, index = "shannon")但是,我希望此diversity函数为整个数据集计算一个数字,而不是为每一行计算一个数字。我不能理解这件事。我的想法是,我需要编写一个函数,将所有列合并为一个列,并获取每个物种的平均丰度,从而创建一个包含所有物种信息的一个站点的数据框架:
site SpecA SpecB SpecC
1 2.6 1 1.6 这看起来像是一个巨大的变通方法,可以用一些现有的函数来完成,但我不知道怎么做。我希望有人能帮助创建这个数据帧,或者使用其他方法在完整的数据帧上使用diversity()函数。
问候
发布于 2021-09-24 10:28:08
library(vegan)
data(BCI)
diversity(colSums(BCI)) # vector of sums is all you need
## vegan 2.6-0 in github has 'groups' argument for sampling units
diversity(BCI, groups = rep(1, nrow(BCI))) # one group, same result as above
diversity(BCI, groups = "a") # arg 'groups' recycled: same result as above https://stackoverflow.com/questions/69312398
复制相似问题