• java.lang.Object
• All Implemented Interfaces:

@Reference(authors="J. Podani",title="New Combinatorial Clustering Methods",booktitle="Vegetatio 81(1/2)",url="https://doi.org/10.1007/978-94-009-2432-1_5",bibkey="doi:10.1007/978-94-009-2432-1_5") @Reference(authors="E. Diday, J. Lemaire, J. Pouget, F. Testu",title="Elements d\'analyse de donnees",booktitle="",bibkey="books/misc/DidayLPT85")
extends java.lang.Object
implements Linkage
Minimum increase in variance (MIVAR) linkage.

This is subtly different from Ward's method (WardLinkage, MISSQ), because variance is normalized by the cluster size; and Ward minimizes the increase in sum of squares (without normalization). $d_{\text{MIVAR}}(A\cup B,C)= \left(\tfrac{|A|+|C|}{|A|+|B|+|C|}\right)^2 d(A,C) + \left(\tfrac{|B|+|C|}{|A|+|B|+|C|}\right)^2 d(B,C) - \tfrac{|C|\cdot(|A|+|B|)}{(|A|+|B|+|C|)^2} d(A,B)$ or equivalently: $d_{\text{MIVAR}}(A\cup B,C)=\tfrac{(|A|+|C|)^2 d(A,C) + (|B|+|C|)^2 d(B,C) - |C|\cdot(|A|+|B|) d(A,B)}{(|A|+|B|+|C|)^2}$

Reference:

J. Podani
New Combinatorial Clustering Methods
Vegetatio 81(1/2)

attributes this to (but we did not verify):

E. Diday, J. Lemaire, J. Pouget, F. Testu
Elements d'analyse de donnees

Since:
0.7.5
Author:
Erich Schubert
• ### Nested Class Summary

Nested Classes
Modifier and Type Class and Description
static class  MinimumVarianceLinkage.Parameterizer
Class parameterizer.
• ### Field Summary

Fields
Modifier and Type Field and Description
static MinimumVarianceLinkage STATIC
Static instance of class.
• ### Constructor Summary

Constructors
Constructor and Description
MinimumVarianceLinkage()
Deprecated.
use the static instance STATIC instead.
• ### Method Summary

All Methods
Modifier and Type Method and Description
double combine(int sizex, double dx, int sizey, double dy, int sizej, double dxy)
Compute combined linkage for two clusters.
double initial(double d, boolean issquare)
Initialization of the distance matrix.
double restore(double d, boolean issquare)
Restore a distance to the original scale.
• ### Methods inherited from class java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
• ### Field Detail

• #### STATIC

public static final MinimumVarianceLinkage STATIC
Static instance of class.
• ### Constructor Detail

@Deprecated
public MinimumVarianceLinkage()
Deprecated. use the static instance STATIC instead.
Constructor.
• ### Method Detail

• #### initial

public double initial(double d,
boolean issquare)
Description copied from interface: Linkage
Initialization of the distance matrix.
Specified by:
initial in interface Linkage
Parameters:
d - Distance
issquare - Flag to indicate the input values are already squared
Returns:
Initial value
• #### restore

public double restore(double d,
boolean issquare)
Description copied from interface: Linkage
Restore a distance to the original scale.
Specified by:
restore in interface Linkage
Parameters:
d - Distance
issquare - Flag to indicate the input values were already squared
Returns:
Initial value
• #### combine

public double combine(int sizex,
double dx,
int sizey,
double dy,
int sizej,
double dxy)
Description copied from interface: Linkage
Compute combined linkage for two clusters.
Specified by:
combine in interface Linkage
Parameters:
sizex - Size of first cluster x before merging
dx - Distance of cluster x to j before merging
sizey - Size of second cluster y before merging
dy - Distance of cluster y to j before merging
sizej - Size of candidate cluster j
dxy - Distance between clusters x and y before merging
Returns:
Combined distance