1
我正在做一個聚類分析,並且想計算修剪樹葉中某個變量的出現次數。下面是一個簡化的例子,其中被修剪的樹只有三個分支。我現在想知道三個不同分支/葉子中的As和Bs的數量。我怎樣才能得到這些?計算修剪樹狀圖葉中特定元素的數量
rm(list=ls(all=TRUE))
mylabels <- matrix(nrow=1, ncol = 20)
mylabels[1,1:10] <- ("A")
mylabels[1,11:20] <- ("B")
myclusterdata <- matrix(rexp(100, rate=.1), ncol=100, nrow=20)
rownames(myclusterdata)<-mylabels
hc <- hclust(dist(myclusterdata), "ave")
memb <- cutree(hc, k = 3)
cent <- NULL
for(k in 1:3){
cent <- rbind(cent, colMeans(myclusterdata[memb == k, , drop = FALSE]))
}
hc1 <- hclust(dist(cent)^2, method = "cen", members = table(memb))
# whole tree
plot(as.dendrogram(hc),horiz=T)
# pruned tree (only 3 branches)
plot(as.dendrogram(hc1),horiz=T)