cophenetic               package:stats               R Documentation

_C_o_p_h_e_n_e_t_i_c _D_i_s_t_a_n_c_e_s _f_o_r _a _H_i_e_r_a_r_c_h_i_c_a_l _C_l_u_s_t_e_r_i_n_g

_D_e_s_c_r_i_p_t_i_o_n:

     Computes the cophenetic distances for a hierarchical clustering.

_U_s_a_g_e:

     cophenetic(x)
     ## Default S3 method:
     cophenetic(x)
     ## S3 method for class 'dendrogram':
     cophenetic(x)

_A_r_g_u_m_e_n_t_s:

       x: an R object representing a hierarchical clustering. For the
          default method, an object of class 'hclust' or with a method
          for 'as.hclust()' such as 'agnes'.

_D_e_t_a_i_l_s:

     The cophenetic distance between two observations that have been
     clustered is defined to be the intergroup dissimilarity at which
     the two observations are first combined into a single cluster.
     Note that this distance has many ties and restrictions.

     It can be argued that a dendrogram is an appropriate summary of
     some data if the correlation between the original distances and
     the cophenetic distances is high.  Otherwise, it should simply be
     viewed as the description of the output of the clustering
     algorithm.

     'cophenetic' is a generic function.  Support for classes which
     represent hierarchical clusterings (total indexed hierarchies) can
     be added by providing an 'as.hclust()' or, more directly, a
     'cophenetic()' method for such a class.

     The method for objects of class '"dendrogram"' requires that all
     leaves of the dendrogram object have non-null labels.

_V_a_l_u_e:

     An object of class 'dist'.

_A_u_t_h_o_r(_s):

     Robert Gentleman

_R_e_f_e_r_e_n_c_e_s:

     Sneath, P.H.A. and Sokal, R.R. (1973) _Numerical Taxonomy: The
     Principles and Practice of Numerical Classification_, p. 278 ff;
     Freeman, San Francisco.

_S_e_e _A_l_s_o:

     'dist', 'hclust'

_E_x_a_m_p_l_e_s:

     require(graphics)

     d1 <- dist(USArrests)
     hc <- hclust(d1, "ave")
     d2 <- cophenetic(hc)
     cor(d1,d2) # 0.7659

     ## Example from Sneath & Sokal, Fig. 5-29, p.279
     d0 <- c(1,3.8,4.4,5.1, 4,4.2,5, 2.6,5.3, 5.4)
     attributes(d0) <- list(Size = 5, diag=TRUE)
     class(d0) <- "dist"
     names(d0) <- letters[1:5]
     d0
     utils::str(upgma <- hclust(d0, method = "average"))
     plot(upgma, hang = -1)
     #
     (d.coph <- cophenetic(upgma))
     cor(d0, d.coph) # 0.9911

