Class SubspaceClusterDefinition

java.lang.Object
weka.datagenerators.ClusterDefinition
weka.datagenerators.clusterers.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: 15743 $
Author:
Gabi Schmidberger (gabi@cs.waikato.ac.nz), FracPete (fracpete at waikato dot ac dot nz)
See Also:
  • Constructor Details

    • 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 Details

    • 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()
    • getClusterType

      public SelectedTag getClusterType()
      Gets the cluster type.
      Returns:
      the cluster type
      See Also:
    • setClusterType

      public void setClusterType(SelectedTag value)
      Sets the cluster type.
      Parameters:
      value - the new cluster type.
      See Also:
    • 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
    • getClusterSubType

      public SelectedTag getClusterSubType()
      Gets the cluster sub type.
      Returns:
      the cluster sub type
      See Also:
    • setClusterSubType

      public void setClusterSubType(SelectedTag value)
      Sets the cluster sub type.
      Parameters:
      value - the new cluster sub type.
      See Also:
    • 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