Computes a matrix of dissimilarities (or similarities) between the columns (or rows) of a matrix.

Namespace: Imsl.Stat
Assembly: ImslCS (in ImslCS.dll) Version: 6.5.0.0

Syntax

C#
[SerializableAttribute]
public class Dissimilarities
Visual Basic (Declaration)
<SerializableAttribute> _
Public Class Dissimilarities
Visual C++
[SerializableAttribute]
public ref class Dissimilarities

Remarks

Class Dissimilarities computes an upper triangular matrix (excluding the diagonal) of dissimilarities (or similarities) between the columns (or rows) of a matrix. Nine different distance measures can be computed. For the first three measures, three different scaling options can be employed. The distance matrix computed is generally used as input to clustering or multidimensional scaling functions.

The following discussion assumes that the distance measure is being computed between the columns of the matrix. If distances between the rows of the matrix are desired, use Row = true.

The distance method and scaling option used by Dissimilarities can be set via properties DistanceMethod and ScalingOption, respectively. For distance methods L2Norm, L1Norm, or InfinityNorm, each row of x is first scaled according to the value of ScalingOption. The scaling parameters are obtained from the values in the row scaled as either the standard deviation of the row or the row range; the standard deviation is computed from the unbiased estimate of the variance. If no scaling is performed, the parameters in the following discussion are all 1.0 (see ScalingOption). Once the scaling value (if any) has been computed, the distance between column i and column j is computed via the difference vector z_k=\frac{(x_k-y_k)}{s_k},i=1,\ldots,ndstm, where x_k denotes the k-th element in the i-th column, y_k denotes the corresponding element in the j-th column, and ndstm is the number of rows if differencing columns and the number of columns if differencing rows. For given z_i, the distance methods that allow scaling are defined as:

DistanceMethod Metric
L2Norm Euclidean distance (L_2
            norm)
L1Norm Sum of the absolute differences (L_1 norm)
InfinityNorm Maximum difference (L_\infty
            norm)

The following distance measures do not allow for scaling.

DistanceMethod Metric
Mahalanobis Mahalanobis distance
AbsCosine Absolute value of the cosine of the angle between the vectors
AngleInRadians Angle in radians (0, \pi) between the lines through the origin defined by the vectors
CorrelationCoefficient Correlation coefficient
AbsCorrelationCoefficient Absolute value of the correlation coefficient
ExactMatches Number of exact matches, where x_i = y_i.

For the Mahalanobis distance, any variable used in computing the distance measure that is (numerically) linearly dependent upon the previous variables in the Index property is omitted from the distance measure.

Inheritance Hierarchy

System..::.Object
Imsl.Stat..::.Dissimilarities

See Also