dendextend (version 1.8.0)

reindex_dend: Reindexing a pruned dendrogram

Description

prune_leaf does not update leaf indices as it prune leaves. As a result, some leaves of the pruned dendrogram may have leaf indeices larger than the number of leaves in the pruned dendrogram, which may cause errors in downstream functions such as as.hclust.

This function re-indexes the leaves such that the leaf indices are no larger than the total number of leaves.

Usage

reindex_dend(dend)

Arguments

dend

dendrogram object

Value

A dendrogram object with the leaf reindexed

Examples

Run this code
# NOT RUN {
hc <- hclust(dist(USArrests[1:5,]), "ave")
dend <- as.dendrogram(hc)

dend_pruned <- prune(dend , c("Alaska", "California"), reindex_dend = FALSE )

## A leave have an index larger than the number of leaves:
unlist (dend_pruned)
# [1] 4 3 1
#' 
dend_pruned_reindexed <- reindex_dend (dend_pruned)

## All leaf indices are no larger than the number of leaves:
unlist (dend_pruned_reindexed)
# [1] 3 2 1

## The dendrograms are equal:
all.equal (dend_pruned, dend_pruned_reindexed)
# TRUE


# }

Run the code above in your browser using DataLab