首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用R中的Vegan包计算完整数据集上的Gamma多样性

使用R中的Vegan包计算完整数据集上的Gamma多样性
EN

Stack Overflow用户
提问于 2021-09-24 09:07:51
回答 1查看 74关注 0票数 0

我有一些数据集,我想要计算其伽马多样性作为香农H指数。

示例数据集:

代码语言:javascript
复制
Site    SpecA   SpecB  SpecC
1       4        0     0
2       3        2     4
3       1        1     1

计算alpha分集的方法如下:

代码语言:javascript
复制
vegan::diversity(df, index = "shannon")

但是,我希望此diversity函数为整个数据集计算一个数字,而不是为每一行计算一个数字。我不能理解这件事。我的想法是,我需要编写一个函数,将所有列合并为一个列,并获取每个物种的平均丰度,从而创建一个包含所有物种信息的一个站点的数据框架:

代码语言:javascript
复制
site  SpecA   SpecB  SpecC
1     2.6     1      1.6 

这看起来像是一个巨大的变通方法,可以用一些现有的函数来完成,但我不知道怎么做。我希望有人能帮助创建这个数据帧,或者使用其他方法在完整的数据帧上使用diversity()函数。

问候

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-24 10:28:08

代码语言:javascript
复制
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 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69312398

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档