Class ClusterCenters

  • All Implemented Interfaces:
    adams.core.AdditionalInformationHandler, adams.core.Destroyable, adams.core.GlobalInfoSupporter, adams.core.logging.LoggingLevelHandler, adams.core.logging.LoggingSupporter, adams.core.option.OptionHandler, adams.core.SizeOfHandler, Serializable

    public class ClusterCenters
    extends AbstractClusterMembershipPostProcessor
    Computes the cluster centers for the provided dataset. An additional attribute is added to the dataset structure that contains the cluster index.
    For numeric attributes the mean is calculated (or median, if 'useMedian' is enabled). For nominal attributes, the most common value is used.
    Stored in container under: Clustered dataset

    -logging-level <OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST> (property: loggingLevel)
        The logging level for outputting errors and debugging output.
        default: WARNING
     
    -use-median <boolean> (property: useMedian)
        If enabled, the median instead of the mean is calculated for numeric attributes.
        default: false
     
    Author:
    fracpete (fracpete at waikato dot ac dot nz)
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected boolean m_UseMedian
      compute median instead of mean.
      • Fields inherited from class adams.core.option.AbstractOptionHandler

        m_OptionManager
      • Fields inherited from class adams.core.logging.LoggingObject

        m_Logger, m_LoggingIsEnabled, m_LoggingLevel
    • Constructor Summary

      Constructors 
      Constructor Description
      ClusterCenters()  
    • Field Detail

      • m_UseMedian

        protected boolean m_UseMedian
        compute median instead of mean.
    • Constructor Detail

      • ClusterCenters

        public ClusterCenters()
    • Method Detail

      • globalInfo

        public String globalInfo()
        Returns a string describing the object.
        Specified by:
        globalInfo in interface adams.core.GlobalInfoSupporter
        Specified by:
        globalInfo in class adams.core.option.AbstractOptionHandler
        Returns:
        a description suitable for displaying in the gui
      • defineOptions

        public void defineOptions()
        Adds options to the internal list of options.
        Specified by:
        defineOptions in interface adams.core.option.OptionHandler
        Overrides:
        defineOptions in class adams.core.option.AbstractOptionHandler
      • setUseMedian

        public void setUseMedian​(boolean value)
        Sets whether to use the median instead of the mean.
        Parameters:
        value - true if to use median
      • getUseMedian

        public boolean getUseMedian()
        Returns whether to use the median instead of the mean.
        Returns:
        true if to use median
      • useMedianTipText

        public String useMedianTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • createOutputFormat

        protected weka.core.Instances createOutputFormat​(weka.core.Instances data)
        Generates the output format (additional attribute for cluster index).
        Parameters:
        data - the original input data
        Returns:
        the header of the output format
      • calculateCenters

        protected weka.core.Instances calculateCenters​(weka.core.Instances data,
                                                       weka.clusterers.Clusterer clusterer,
                                                       weka.core.Instances outputFormat)
        Calculates the centers.
        Parameters:
        data - the input data used for training the clusterer
        clusterer - the built clusterer
        outputFormat - the format to use for the output
        Returns:
        the generated output