HierarchicalClusterAnalysis Class

Represents a hierarchical cluster analysis of a set of data.

Definition

Namespace: Numerics.NET.Statistics.Multivariate
Assembly: Numerics.NET (in Numerics.NET.dll) Version: 9.0.4
C#
public class HierarchicalClusterAnalysis : ClusteringModel<double>
Inheritance
Object  →  Model  →  ClusteringModel<Double>  →  HierarchicalClusterAnalysis

Remarks

Use the HierarchicalClusterAnalysis to identify homogeneous subgroups of cases in a population using the agglomerative hierarchical clustering method. The method starts out by treating every case as its own cluster. It then successively combines ("agglomerates") clusters that are closest to each other until the entire population is one cluster. The order in which clusters are combined specifies a hierarchy. The last remaining clusters determine membership of the homogeneous groups.

The DistanceMeasure determines how the distance between clusters is calculated. The default is to use the squared Euclidean distance. The DistanceMeasures class defines several common distance measures.

The LinkageMethod property determines how cluster distances are updated when two clusters are merged. The default is the centroid method. The Standardize property determines whether the variables are transformed to all have the same mean and standard deviation. The default is true.

Once the clustering has been computed by calling the Fit() method, the GetClusterPartition(Int32) method can be used to partition the observations. This method returns a HierarchicalClusterCollection that provides detailed information about each of the clusters.

The results of a hierarchical cluster analysis are often presented in graphical form as a dendrogram, a tree-like structure that shows how clusters were combined. The DendrogramRoot property returns a DendrogramNode object that represents the root of the dendrogram. It provides all the information necessary to produce a dendrogram. See the DendrogramNode class for details.

Constructors

HierarchicalClusterAnalysis(IEnumerable<Vector<Double>>) Constructs a new HierarchicalClusterAnalysis.
HierarchicalClusterAnalysis(Matrix<Double>) Constructs a new HierarchicalClusterAnalysis.
HierarchicalClusterAnalysis(IDataFrame, String) Constructs a new HierarchicalClusterAnalysis.
HierarchicalClusterAnalysis(IDataFrame, String[]) Constructs a new HierarchicalClusterAnalysis.

Properties

BaseFeatureIndex Gets an index containing the keys of the columns that are required inputs to the model.
(Inherited from Model)
Computed Gets whether the model has been computed.
(Inherited from Model)
Obsolete.
Data Gets an object that contains all the data used as input to the model.
(Inherited from Model)
DendrogramRoot Gets the root node of the dendrogram.
DistanceMeasure Gets or sets the DistanceMeasure used to compute the distance between two cases.
Fitted Gets whether the model has been computed.
(Inherited from Model)
InputSchema Gets the schema for the features used for fitting the model.
(Inherited from Model)
LinkageMethod Gets or sets the LinkageMethod for the analysis.
MaxDegreeOfParallelism Gets or sets the maximum degree of parallelism enabled by this instance.
(Inherited from Model)
ModelSchema Gets the collection of variables used in the model.
(Inherited from Model)
NumberOfObservations Gets the number of observations the model is based on.
(Inherited from Model)
ParallelOptions Gets or sets an object that specifies how the calculation of the model should be parallelized.
(Inherited from Model)
SimilarityMatrix Gets or sets the similarity matrix.
Standardize Gets or sets whether the variables should be standardized before the clustering is computed.
Status Gets the status of the model, which determines which information is available.
(Inherited from Model)
SupportsWeights Indicates whether the model supports case weights.
(Inherited from Model)
Weights Gets or sets the actual weights.
(Inherited from Model)

Methods

Compute() Computes the model.
(Inherited from Model)
Obsolete.
Compute(ParallelOptions) Computes the model.
(Inherited from Model)
Obsolete.
EqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
FinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object)
Fit() Fits the model to the data.
(Inherited from Model)
Fit(ParallelOptions) Fits the model to the data.
(Inherited from Model)
FitCore Computes the model.
(Overrides Model.FitCore(ModelInput, ParallelOptions))
GetClusterPartition(Double) Returns the partition of the data into the specified number of clusters.
GetClusterPartition(Int32) Returns the partition of the data into the specified number of clusters.
GetDendrogramOrder Sorts the cases in an order suitable for displaying a dendrogram.
GetHashCodeServes as the default hash function.
(Inherited from Object)
GetTypeGets the Type of the current instance.
(Inherited from Object)
MemberwiseCloneCreates a shallow copy of the current Object.
(Inherited from Object)
ResetComputation Clears all fitted model parameters.
(Inherited from Model)
Obsolete.
ResetFit Clears all fitted model parameters.
(Inherited from Model)
SetDataSource Uses the specified data frame as the source for all input variables.
(Inherited from Model)
Summarize() Returns a string containing a human-readable summary of the object using default options.
(Inherited from Model)
Summarize(SummaryOptions) Returns a string containing a human-readable summary of the object using the specified options.
(Overrides Model.Summarize(SummaryOptions))
ToStringReturns a string that represents the current object.
(Inherited from Model)

See Also