1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
|
% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/prune.R
\name{reindex_dend}
\alias{reindex_dend}
\title{Reindexing a pruned dendrogram}
\usage{
reindex_dend(dend)
}
\arguments{
\item{dend}{dendrogram object}
}
\value{
A \code{dendrogram} object with the leaf reindexed
}
\description{
\code{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 \code{as.hclust}.
This function re-indexes the leaves such that the leaf indices are no larger
than the total number of leaves.
}
\examples{
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
}
|