Class BIRCHCF

  • All Implemented Interfaces:
    elki.data.FeatureVector<java.lang.Number>, elki.data.NumberVector, elki.data.spatial.SpatialComparable, AsClusterFeature, ClusterFeature

    public class BIRCHCF
    extends java.lang.Object
    implements ClusterFeature
    Clustering Feature of BIRCH, only for comparison
    Since:
    0.8.0
    Author:
    Erich Schubert
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  BIRCHCF.Factory
      Factory for making cluster features.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      (package private) double[] ls
      Linear sum.
      (package private) int n
      Number of objects
      (package private) double ss
      Sum of squares (see original thesis, this is a scalar).
      • Fields inherited from interface elki.data.FeatureVector

        TYPE
      • Fields inherited from interface elki.data.NumberVector

        ATTRIBUTE_SEPARATOR, FIELD, FIELD_1D, FIELD_2D, VARIABLE_LENGTH
    • Constructor Summary

      Constructors 
      Constructor Description
      BIRCHCF​(int dimensionality)
      Constructor.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addToStatistics​(elki.data.NumberVector nv)
      Add NumberVector to CF
      void addToStatistics​(BIRCHCF other)  
      void addToStatistics​(ClusterFeature other)
      Add other CF to CF
      double centroid​(int i)
      Returns the mean of the specified dimension.
      double[][] covariance()
      returns the covariance matrix
      int getDimensionality()  
      int getWeight()
      Return the weight
      double ls​(int i)
      Get the linear sum of component i.
      void resetStatistics()
      Resets all statistics of CF
      double sumdev()
      Returns the total sum of Deviations.
      static double sumOfSquares​(elki.data.NumberVector v)
      Compute the sum of squares of a vector.
      double sumOfSquaresOfSums()
      Sum over all dimensions of squares of linear sums.
      double sumOfSumOfSquares()
      Sum over all dimensions of sums of squares.
      double[] toArray()  
      double variance()
      Returns the total variance.
      double variance​(int i)
      Returns the variance in the specified dimension.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface elki.data.FeatureVector

        toString
      • Methods inherited from interface elki.data.NumberVector

        byteValue, floatValue, getMax, getMin, getValue, intValue, shortValue
    • Field Detail

      • n

        int n
        Number of objects
      • ls

        double[] ls
        Linear sum.
      • ss

        double ss
        Sum of squares (see original thesis, this is a scalar).
    • Constructor Detail

      • BIRCHCF

        public BIRCHCF​(int dimensionality)
        Constructor.
        Parameters:
        dimensionality - Dimensionality
    • Method Detail

      • addToStatistics

        public void addToStatistics​(elki.data.NumberVector nv)
        Description copied from interface: ClusterFeature
        Add NumberVector to CF
        Specified by:
        addToStatistics in interface ClusterFeature
        Parameters:
        nv - NumberVector
      • addToStatistics

        public void addToStatistics​(BIRCHCF other)
      • centroid

        public double centroid​(int i)
        Description copied from interface: ClusterFeature
        Returns the mean of the specified dimension.
        Specified by:
        centroid in interface ClusterFeature
        Parameters:
        i - dimension
        Returns:
        mean of this dimension
      • sumOfSumOfSquares

        public double sumOfSumOfSquares()
        Sum over all dimensions of sums of squares.
        Returns:
        Sum of SS
      • sumOfSquaresOfSums

        public double sumOfSquaresOfSums()
        Sum over all dimensions of squares of linear sums.
        Returns:
        Sum of LS
      • getDimensionality

        public int getDimensionality()
        Specified by:
        getDimensionality in interface elki.data.FeatureVector<java.lang.Number>
        Specified by:
        getDimensionality in interface elki.data.spatial.SpatialComparable
      • sumOfSquares

        public static double sumOfSquares​(elki.data.NumberVector v)
        Compute the sum of squares of a vector.
        Parameters:
        v - Vector
        Returns:
        Sum of squares
      • ls

        public double ls​(int i)
        Get the linear sum of component i.
        Parameters:
        i - Component
        Returns:
        linear sum
      • variance

        public double variance​(int i)
        Description copied from interface: ClusterFeature
        Returns the variance in the specified dimension.
        Specified by:
        variance in interface ClusterFeature
        Parameters:
        i - dimension
        Returns:
        variance in this dimension.
      • variance

        public double variance()
        Description copied from interface: ClusterFeature
        Returns the total variance.
        Specified by:
        variance in interface ClusterFeature
        Returns:
        variance.
      • sumdev

        public double sumdev()
        Description copied from interface: ClusterFeature
        Returns the total sum of Deviations.
        Specified by:
        sumdev in interface ClusterFeature
        Returns:
        Sum of Deviations.
      • covariance

        public double[][] covariance()
        Description copied from interface: ClusterFeature
        returns the covariance matrix
        Specified by:
        covariance in interface ClusterFeature
        Returns:
        covariance
      • toArray

        public double[] toArray()
        Specified by:
        toArray in interface elki.data.NumberVector