0

我正在尝试使用二进制数据进行层次聚类分析,对于距离矩阵,我应用了vegdist()vegan 包中的函数:

dist.jac <- vegdist(final_df, method="jaccard", binary = TRUE)

接下来,我使用了函数 hclust 但我不确定是否应该使用由以下生成的相异矩阵vegdist()

jac <- hclust(dist.jac, method = "ward.D")

或尝试这样的事情(如我所见):

jac <- hclust(dist(dist.jac), method = "ward.D")

因为该函数hclust()需要“由 dist 产生的不同结构”。但另一方面,vegan 包说“应该提供一个替代 dist 并返回相同类型的距离对象”和“该函数是 dist 的替代品”。申请对我来说没有多大意义,dist(dist.jac)但我已经看到这样做了,所以如果有人能向我解释我应该使用哪一个,我将非常感激!

4

1 回答 1

0

如果有人这样做dist(dist.jac),他们会得到数据不同的不同,而不是数据的不同。这很少有道理。

正如vegan文档所说,vegdistdist. 使用哪一个并不重要。如果差异仅在一种替代方案中可用,请使用它。如果两者都可用,请使用其中任何一个。在这种情况下,我个人更喜欢dist它,因为它不需要调用任何贡献的包。

于 2020-11-13T15:48:04.107 回答