constructs a cluster hierarchy based on the distance or dissimilarity matrix m.


associates the elements of list with the rows of the matrix m in the cluster hierarchy.


  • To use DirectAgglomerate, you first need to load the Hierarchical Clustering Package using Needs["HierarchicalClustering`"].
  • DirectAgglomerate[m] labels each element by its row position in the matrix m.
  • DirectAgglomerate gives a Cluster object.
  • The cluster hierarchy may be viewed using DendrogramPlot.
  • The distance matrix m can be any symmetric matrix.
  • The method used to determine intercluster dissimilarity can be specified using the Linkage option.
  • Possible settings for the Linkage option include:
  • "Single"smallest intercluster dissimilarity
    "Average"average intercluster dissimilarity
    "Complete"largest intercluster dissimilarity
    "WeightedAverage"weighted average intercluster dissimilarity
    "Centroid"distance from cluster centroids
    "Median"distance from cluster medians
    "Ward"Ward's minimum variance dissimilarity
    fa pure function
  • The function f defines a distance from a cluster k to the new cluster formed by fusing clusters i and j.
  • The arguments supplied to f are dik, djk, dij, ni, nj, and nk, where d is the distance between clusters and n is the number of elements in a cluster.


open allclose all

Basic Examples  (1)

Obtain a cluster hierarchy from a distance matrix:

Use labels to represent the rows:

Options  (1)

Linkage  (1)

Cluster hierarchy using Ward's linkage: