如何在最佳 K 处排列(切割)树状图
How to line (cut) a dendrogram at the best K
如何在树状图中绘制一条线,使 对应给定标准的最佳 K?
像这样:
假设这是我的树状图,最好的 K 是 4。
data("mtcars")
myDend <- as.dendrogram(hclust(dist(mtcars)))
plot(myDend)
我知道 abline
函数可以像上面显示的那样在图形中画线。但是,我不知道如何计算高度,所以该函数用作 abline(h = myHeight)
获取身高所需的信息随 hclust
一起提供。它有一个包含高度的变量。要获得 4 个簇,您需要在第 3 大和第 4 大高度之间画线。
HC = hclust(dist(mtcars))
myDend <- as.dendrogram(HC)
par(mar=c(7.5,4,2,2))
plot(myDend)
k = 4
n = nrow(mtcars)
MidPoint = (HC$height[n-k] + HC$height[n-k+1]) / 2
abline(h = MidPoint, lty=2)
如何在树状图中绘制一条线,使 对应给定标准的最佳 K?
像这样:
假设这是我的树状图,最好的 K 是 4。
data("mtcars")
myDend <- as.dendrogram(hclust(dist(mtcars)))
plot(myDend)
我知道 abline
函数可以像上面显示的那样在图形中画线。但是,我不知道如何计算高度,所以该函数用作 abline(h = myHeight)
获取身高所需的信息随 hclust
一起提供。它有一个包含高度的变量。要获得 4 个簇,您需要在第 3 大和第 4 大高度之间画线。
HC = hclust(dist(mtcars))
myDend <- as.dendrogram(HC)
par(mar=c(7.5,4,2,2))
plot(myDend)
k = 4
n = nrow(mtcars)
MidPoint = (HC$height[n-k] + HC$height[n-k+1]) / 2
abline(h = MidPoint, lty=2)