多样性指数 - 素食套餐

问题描述 投票:0回答:1

我正在尝试计算辛普森多样性指数,我想知道是否可以使用 vegan 包保留行名称。

我的数据集目前看起来像这样:

           hab   Sp1   Sp2
1     habitat1   1645  1550
2     habitat2   2935  3060
3     habitat3   4780  2875
4     habitat4   3370  3500
5     habitat5   3730  2270
6     habitat6   2475  1140
7     habitat7   1405  1160
8     habitat8   6180  4145
9     habitat9    795   140
10    habitat10  4745  4595

我使用的代码是:

data_simp %>% 
  diversity("simp")

Error in diversity(., "simp") : input data must be numeric

当我删除数据集中的第一列时,我设法获取每行的辛普森索引。但是,我想保留第一列来创建一个新的数据集,其中包含“栖息地”的名称和相应的辛普森多样性指数。

可以吗?

谢谢你:)

r vegan
1个回答
0
投票

有什么理由不能让它们分开并重新合并吗?例如:

df <- data.frame(
  hab = paste0("habitat", 1:10),
  Sp1 = c(1645, 2935, 4780, 3370, 3730, 2475, 1405, 6180, 795, 4745),
  Sp2 = c(1550, 3060, 2875, 3500, 2270, 1140, 1160, 4145, 140, 4595)
)

data_simp <- cbind.data.frame(df$hab, vegan::diversity(df[,2:3]))
#> 1  habitat1  0.6927051
#> 2  habitat2  0.6929298
#> 3  habitat3  0.6618545
#> ...

(在此步骤之后您可能需要添加更多信息丰富的列名称)

© www.soinside.com 2019 - 2024. All rights reserved.