Learn R Programming

dendextend (version 1.4.0)

heights_per_k.dendrogram: Which height will result in which k for a dendrogram

Description

Which height will result in which k for a dendrogram. This helps with speeding up the cutree.dendrogram function.

Usage

heights_per_k.dendrogram(dend, ...)

Arguments

dend
a dendrogram.
...
not used.

Value

a vector of heights, with its names being the k clusters that will result for cutting the dendrogram at each height.

Examples

Run this code
## Not run: 
# hc <- hclust(dist(USArrests[1:4,]), "ave")
# dend <- as.dendrogram(hc)
# heights_per_k.dendrogram(dend)
# ##       1        2        3        4 
# ##86.47086 68.84745 45.98871 28.36531 
# 
# cutree(hc, h = 68.8) # and indeed we get 2 clusters
# 
# unbranch_dend <- unbranch(dend,2)
# plot(unbranch_dend)
# heights_per_k.dendrogram(unbranch_dend)
#        #1        3        4 
#        #97.90023 57.41808 16.93594 
#        # we do NOT have a height for k=2 because of the tree's structure.
#        
#    
# library(microbenchmark)
# dend = as.dendrogram(hclust(dist(iris[1:150,-5])))
# dend = as.dendrogram(hclust(dist(iris[1:30,-5])))
# dend = as.dendrogram(hclust(dist(iris[1:3,-5])))
# microbenchmark(
#    #    dendextendRcpp::heights_per_k.dendrogram(dend),
#    dendextendRcpp::dendextendRcpp_heights_per_k.dendrogram(dend),
#    dendextendRcpp::old_heights_per_k.dendrogram(dend)
# )
# # improvment is 10 times faster (in Rcpp) for a tree of size 3
# # 76 times faster for a tree of size 30
# # And:
# # 134 times faster for a tree of size 150!!
# ## End(Not run)

Run the code above in your browser using DataLab