当应用于 R 中的树状图时,`merge` 实际上做了什么?

What does `merge` actually do when applied to dendrograms in R?

我很难理解 R 函数 merge 在合并两个树状图时的确切作用。 实际问题是:

节点(合并两棵树)的高度是如何得到的?

树状图通过不同的聚集方法构建的事实 也可以联合,这意味着该函数不使用任何 Lance-Williams 更新。 这也通过分裂任何树状图的根节点然后重建它来证实 通过merge:最终的高度与原来的不一样:

# data to get the dissimilarity matrix from
mydata <- matrix(c(3,4, 9,10,11)) 

# computing Euclidean distances
dissMatrix <- dist(mydata)

# hierarchical clustering through complete linkage
hc1 <- hclust(dissMatrix)

# original height
max(hc1$height)
[1] 8

# splitting the tree
hc1_children <- lapply(split(mydata, cutree(hc1, 2)), function(x) 
                                              as.dendrogram(hclust(dist(x))))

# merging the "child" dendrograms
hc1_rebuilt <- merge(hc1_children[[1]], hc1_children[[2]])

# final height
max(as.hclust(hc1_rebuilt)$height)
[1] 2.2

非常感谢任何启发。显示 merge 如何处理此样本数据会很棒。

帮助文件里写的是什么:

height height at which the two dendrograms should be merged. If not specified (or NULL), the default is ten percent larger than the (larger of the) two component heights.