Class SubspaceClusterDefinition

  • All Implemented Interfaces:
    Serializable, OptionHandler, RevisionHandler

    public class SubspaceClusterDefinition
    extends ClusterDefinition
    A single cluster for the SubspaceCluster data generator.

    Valid options are:

     -A <range>
      Uses a random uniform distribution for the instances in the cluster.
     
     -U <range>
      Generates totally uniformly distributed instances in the cluster.
     
     -G <range>
      Uses a Gaussian distribution for the instances in the cluster.
     
     -D <num>,<num>
      The attribute min/max (-A and -U) or mean/stddev (-G) for the cluster, repeated for each attribute.
     
     -N <num>..<num>
      The range of number of instances per cluster (default 1..50).
     
     -I
      Uses integer instead of continuous values (default: continuous).
     
    Version:
    $Revision$
    Author:
    Gabi Schmidberger (gabi@cs.waikato.ac.nz), FracPete (fracpete at waikato dot ac dot nz)
    See Also:
    SubspaceCluster, Serialized Form
    • Constructor Detail

      • SubspaceClusterDefinition

        public SubspaceClusterDefinition()
        Needed so that this class can be found as permissible.
      • SubspaceClusterDefinition

        public SubspaceClusterDefinition​(ClusterGenerator parent)
        initializes the cluster with default values
        Parameters:
        parent - the datagenerator this cluster belongs to
    • Method Detail

      • globalInfo

        public String globalInfo()
        Returns a string describing this data generator.
        Overrides:
        globalInfo in class ClusterDefinition
        Returns:
        a description of the data generator suitable for displaying in the explorer/experimenter gui
      • listOptions

        public Enumeration<Option> listOptions()
        Returns an enumeration describing the available options.
        Returns:
        an enumeration of all the available options
      • setOptions

        public void setOptions​(String[] options)
                        throws Exception
        Parses a list of options for this object.

        Valid options are:

         -A <range>
          Uses a random uniform distribution for the instances in the cluster.
         
         -U <range>
          Generates totally uniformly distributed instances in the cluster.
         
         -G <range>
          Uses a Gaussian distribution for the instances in the cluster.
         
         -D <num>,<num>
          The attribute min/max (-A and -U) or mean/stddev (-G) for the cluster, repeated for each attribute.
         
         -N <num>..<num>
          The range of number of instances per cluster (default 1..50).
         
         -I
          Uses integer instead of continuous values (default: continuous).
         
        Parameters:
        options - the list of options as an array of strings
        Throws:
        Exception - if an option is not supported
      • getOptions

        public String[] getOptions()
        Gets the current settings of the datagenerator BIRCHCluster.
        Returns:
        an array of strings suitable for passing to setOptions
      • attributesToString

        public String attributesToString()
        Make a string from the attribues list.
        Returns:
        the attributes as string
      • toString

        public String toString()
        Make a string from the cluster features.
        Overrides:
        toString in class ClusterDefinition
        Returns:
        the cluster features as string
      • setAttrIndexRange

        public void setAttrIndexRange​(String rangeList)
        Sets which attributes are used in the cluster.
        Parameters:
        rangeList - a string representing the list of attributes. Since the string will typically come from a user, attributes are indexed from 1.
        eg: first-3,5,6-last
      • getAttrIndexRange

        public String getAttrIndexRange()
        returns the attribute range(s).
        Returns:
        the attribute range(s).
      • attrIndexRangeTipText

        public String attrIndexRangeTipText()
        Returns the tip text for this property
        Returns:
        tip text for this property suitable for displaying in the explorer/experimenter gui
      • getAttributes

        public boolean[] getAttributes()
      • getMinValue

        public double[] getMinValue()
      • getMaxValue

        public double[] getMaxValue()
      • getMeanValue

        public double[] getMeanValue()
      • getStddevValue

        public double[] getStddevValue()
      • getNumInstances

        public int getNumInstances()
      • clusterTypeTipText

        public String clusterTypeTipText()
        Returns the tip text for this property
        Returns:
        tip text for this property suitable for displaying in the explorer/experimenter gui
      • clusterSubTypeTipText

        public String clusterSubTypeTipText()
        Returns the tip text for this property
        Returns:
        tip text for this property suitable for displaying in the explorer/experimenter gui
      • isRandom

        public boolean isRandom()
        checks, whether cluster type is random
        Returns:
        true if cluster type is random
      • isUniform

        public boolean isUniform()
        checks, whether cluster type is uniform
        Returns:
        true if cluster type is uniform
      • isGaussian

        public boolean isGaussian()
        checks, whether cluster type is gaussian
        Returns:
        true if cluster type is gaussian
      • isContinuous

        public boolean isContinuous()
        checks, whether cluster sub type is continuous
        Returns:
        true if cluster sub type is continuous
      • isInteger

        public boolean isInteger()
        checks, whether cluster sub type is integer
        Returns:
        true if cluster sub type is integer
      • getMinInstNum

        public int getMinInstNum()
        Gets the lower boundary for instances per cluster.
        Returns:
        the the lower boundary for instances per cluster
      • setMinInstNum

        public void setMinInstNum​(int newMinInstNum)
        Sets the lower boundary for instances per cluster.
        Parameters:
        newMinInstNum - new lower boundary for instances per cluster
      • minInstNumTipText

        public String minInstNumTipText()
        Returns the tip text for this property
        Returns:
        tip text for this property suitable for displaying in the explorer/experimenter gui
      • getMaxInstNum

        public int getMaxInstNum()
        Gets the upper boundary for instances per cluster.
        Returns:
        the upper boundary for instances per cluster
      • setMaxInstNum

        public void setMaxInstNum​(int newMaxInstNum)
        Sets the upper boundary for instances per cluster.
        Parameters:
        newMaxInstNum - new upper boundary for instances per cluster
      • maxInstNumTipText

        public String maxInstNumTipText()
        Returns the tip text for this property
        Returns:
        tip text for this property suitable for displaying in the explorer/experimenter gui
      • setNumInstances

        public void setNumInstances​(Random r)
        Sets the real number of instances for this cluster.
        Parameters:
        r - random number generator
      • setValuesList

        public void setValuesList​(String fromToList)
                           throws Exception
        Sets the ranges for each attribute.
        Parameters:
        fromToList - the string containing the upper and lower boundary for instances per cluster separated by ..
        Throws:
        Exception - if values are not correct in number or value
      • getValuesList

        public String getValuesList()
        returns the range for each attribute as string
      • valuesListTipText

        public String valuesListTipText()
        Returns the tip text for this property
        Returns:
        tip text for this property suitable for displaying in the explorer/experimenter gui
      • getRevision

        public String getRevision()
        Returns the revision string.
        Returns:
        the revision