仅针对重新采样的站点计算Jaccard

时间:2019-03-19 10:35:16

标签: r vegan

我有一个数据集,其中在2017年和2018年均采样了40个地点的物种不存在。我正在努力寻找在地点之间建立成对Jaccard距离的最佳方法。

我的目标是在两年内获得同一站点之间的成对比较。例如。站点1在2017年和2018年,站点2在2017年和2018年。是否有一种简单的方法来限制Jaccard的计算,以便仅在年份不同且站点相同时才进行计算?

想要的输出:

                       jaccard
2017:1 vs 2018:1       0.2
2017:2 vs 2018:2       0.8
2017:3 vs 2018:3       0.5
2017:4 vs 2018:4       0.1
       .                .
       .                .
2017:40 vs 2018:40     0.6                       

模拟数据-我的真实数据包含的物种比此处模拟的要多得多:

year <- c(rep(2017, 40), rep(2018, 40))
site <- c(rep(1:40,2))
sp1 <- sample(c(0,1), replace=TRUE, size=80)
sp2 <- sample(c(0,1), replace=TRUE, size=80) 
sp3 <- sample(c(0,1), replace=TRUE, size=80)

cbind(year, site, sp1,sp2,sp3)

当我计算Jaccard时,会得到一个包含所有jaccard距离的大矩阵:

library(vegan)
vegdist(data, method = "jaccard", binary = TRUE)

0 个答案:

没有答案