inconsistent β€” SciPy v1.15.2 Manual (original) (raw)

scipy.cluster.hierarchy.

scipy.cluster.hierarchy.inconsistent(Z, d=2)[source]#

Calculate inconsistency statistics on a linkage matrix.

Parameters:

Zndarray

The \((n-1)\) by 4 matrix encoding the linkage (hierarchical clustering). See linkage documentation for more information on its form.

dint, optional

The number of links up to d levels below each non-singleton cluster.

Returns:

Rndarray

A \((n-1)\) by 4 matrix where the i’th row contains the link statistics for the non-singleton cluster i. The link statistics are computed over the link heights for links \(d\) levels below the cluster i. R[i,0] and R[i,1] are the mean and standard deviation of the link heights, respectively; R[i,2] is the number of links included in the calculation; and R[i,3] is the inconsistency coefficient,

\[\frac{\mathtt{Z[i,2]} - \mathtt{R[i,0]}} {R[i,1]}\]

Notes

This function behaves similarly to the MATLAB(TM) inconsistentfunction.

Examples

from scipy.cluster.hierarchy import inconsistent, linkage from matplotlib import pyplot as plt X = [[i] for i in [2, 8, 0, 4, 1, 9, 9, 0]] Z = linkage(X, 'ward') print(Z) [[ 5. 6. 0. 2. ] [ 2. 7. 0. 2. ] [ 0. 4. 1. 2. ] [ 1. 8. 1.15470054 3. ] [ 9. 10. 2.12132034 4. ] [ 3. 12. 4.11096096 5. ] [11. 13. 14.07183949 8. ]] inconsistent(Z) array([[ 0. , 0. , 1. , 0. ], [ 0. , 0. , 1. , 0. ], [ 1. , 0. , 1. , 0. ], [ 0.57735027, 0.81649658, 2. , 0.70710678], [ 1.04044011, 1.06123822, 3. , 1.01850858], [ 3.11614065, 1.40688837, 2. , 0.70710678], [ 6.44583366, 6.76770586, 3. , 1.12682288]])