【发布时间】:2021-07-01 13:52:28
【问题描述】:
我尝试自己编写 braycurtis 函数。我的数据是关于不同地区的经济、社会数据(每行是不同地区,每列是经济学家图像描述此处索引)。样本(数据已经在 0-1 范围内归一化,这就是为什么最佳区域,标准区域的值为 1)- 真实数据有更多的区域和值:P
Region= c("A", "B", "C")
Sp1 =c(0.43, 1, 0.5)
Sp2 = c(0.53, 0.12, 0.75)
...
Sp23 = c(0.97, 0.2, 1)
Sp24 = c(0.34, 0.72, 0.23)
我需要综合发展指数,这就是我尝试使用 bray_curtis 的原因。这是我函数的代码
bray_curtis <- function(x, na.rm = FALSE) {
return(1-(rowSums(abs(x - max(x))))/rowSums(x+max(x)))
}
gus2016_braycurtis <- as.data.frame(lapply(gus2016_norm, bray_curtis))
公式,我试图实现 [1]:https://i.stack.imgur.com/LRrBb.png
我应该改变什么?为了输出我需要一个每个地区的综合发展指数列。
【问题讨论】:
-
提供一些可重复的数据并显示您想要的结果。
vegan包中的函数vegdist和ecodist包中的bcdist计算 Bray-Curtis 指数。 -
BC (dis)similarity index逐个元素地比较两个向量。它说明了这两者的相似之处。它确实没有给出one向量的任何综合发展指数。如果您取一列 BC (dis)similarities,那只会说明每列与该列的 (dis)similar 程度。你真的想使用 BC (dis)similarities 吗?还是您在寻找完全不同的东西?比如一些“综合发展指数”?
-
我为您的原始问题写了一个较长的答案,但我认为您真的不想使用成对的 Bray-Curtis (dis)similarity,因此我删除了我的答案。
标签: r geospatial distance vegan economics