Package weka.datagenerators.clusterers

# 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 datagenerator

Valid options are:

     -A <range>
      Generates randomly distributed instances in the cluster.

     -U <range>
      Generates uniformly distributed instances in the cluster.

     -G <range>
      Generates gaussian distributed instances in the cluster.

     -D <num>,<num>
      The attribute min/max (-A and -U) or mean/stddev (-G) for
      the cluster.

     -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: 1.5 $
Author:
  Gabi Schmidberger (gabi@cs.waikato.ac.nz), FracPete (fracpete at waikato dot ac dot nz)
See Also:
  - `SubspaceCluster`
  - Serialized Form

## Constructor Summary

Constructors
Constructor
Description
`SubspaceClusterDefinition()`
initializes the cluster, without a parent cluster (necessary for GOE)
`SubspaceClusterDefinition(ClusterGenerator parent)`
initializes the cluster with default values

## Method Summary

Modifier and Type
Method
Description
`String`
`attributesToString()`
Make a string from the attribues list.
`String`
`attrIndexRangeTipText()`
Returns the tip text for this property
`String`
`clusterSubTypeTipText()`
Returns the tip text for this property
`String`
`clusterTypeTipText()`
Returns the tip text for this property
`boolean[]`
`getAttributes()`
`String`
`getAttrIndexRange()`
returns the attribute range(s).
`SelectedTag`
`getClusterSubType()`
Gets the cluster sub type.
`SelectedTag`
`getClusterType()`
Gets the cluster type.
`int`
`getMaxInstNum()`
Gets the upper boundary for instances per cluster.
`double[]`
`getMaxValue()`
`String`
`getMeanStddev()`
returns the current mean/stddev setup
`double[]`
`getMeanValue()`
`int`
`getMinInstNum()`
Gets the lower boundary for instances per cluster.
`double[]`
`getMinValue()`
`int`
`getNumInstances()`
`String[]`
`getOptions()`
Gets the current settings of the datagenerator BIRCHCluster.
`String`
`getRevision()`
Returns the revision string.
`double[]`
`getStddevValue()`
`String`
`getValuesList()`
returns the range for each attribute as string
`String`
`globalInfo()`
Returns a string describing this data generator.
`boolean`
`isContinuous()`
checks, whether cluster sub type is continuous
`boolean`
`isGaussian()`
checks, whether cluster type is gaussian
`boolean`
`isInteger()`
checks, whether cluster sub type is integer
`boolean`
`isRandom()`
checks, whether cluster type is random
`boolean`
`isUniform()`
checks, whether cluster type is uniform
`Enumeration`
`listOptions()`
Returns an enumeration describing the available options.
`String`
`maxInstNumTipText()`
Returns the tip text for this property
`String`
`meanStddevTipText()`
Returns the tip text for this property
`String`
`minInstNumTipText()`
Returns the tip text for this property
`void`
`setAttrIndexRange(String rangeList)`
Sets which attributes are used in the cluster attributes among the selection will be discretized.
`void`
`setClusterSubType(SelectedTag value)`
Sets the cluster sub type.
`void`
`setClusterType(SelectedTag value)`
Sets the cluster type.
`void`
`setMaxInstNum(int newMaxInstNum)`
Sets the upper boundary for instances per cluster.
`void`
`setMeanStddev(String meanstddev)`
Sets mean and standarddeviation.
`void`
`setMinInstNum(int newMinInstNum)`
Sets the lower boundary for instances per cluster.
`void`
`setNumInstances(Random r)`
Sets the real number of instances for this cluster.
`void`
`setOptions(String[] options)`
Parses a list of options for this object.
`void`
`setParent(SubspaceCluster parent)`
sets the parent datagenerator this cluster belongs to
`void`
`setValuesList(String fromToList)`
Sets the ranges for each attribute.
`void`
`setValuesList(String fromToList, double[] first, double[] second, String optionLetter)`
Sets the ranges for each attribute.
`String`
`toString()`
Make a string from the cluster features.
`String`
`valuesListTipText()`
Returns the tip text for this property

### Methods inherited from class weka.datagenerators.ClusterDefinition

`getParent, parentTipText, setParent`

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## Constructor Details

### SubspaceClusterDefinition

public SubspaceClusterDefinition()
initializes the cluster, without a parent cluster (necessary for GOE)

### 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 listOptions()
Returns an enumeration describing the available options.

Specified by:
  `listOptions` in interface `OptionHandler`
Specified by:
  `listOptions` in class `ClusterDefinition`
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>
      Generates randomly distributed instances in the cluster.

     -U <range>
      Generates uniformly distributed instances in the cluster.

     -G <range>
      Generates gaussian distributed instances in the cluster.

     -D <num>,<num>
      The attribute min/max (-A and -U) or mean/stddev (-G) for
      the cluster.

     -N <num>..<num>
      The range of number of instances per cluster (default 1..50).

     -I
      Uses integer instead of continuous values (default continuous).

Specified by:
  `setOptions` in interface `OptionHandler`
Specified by:
  `setOptions` in class `ClusterDefinition`
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.

Specified by:
  `getOptions` in interface `OptionHandler`
Specified by:
  `getOptions` in class `ClusterDefinition`
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

### setParent

public void setParent(SubspaceCluster parent)
sets the parent datagenerator this cluster belongs to

Parameters:
  `parent` - the parent datagenerator

### setAttrIndexRange

public void setAttrIndexRange(String rangeList)
Sets which attributes are used in the cluster attributes among the selection will be discretized.

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:
  - `SubspaceCluster.TAGS_CLUSTERTYPE`

### setClusterType

public void setClusterType(SelectedTag value)
Sets the cluster type.

Parameters:
  `value` - the new cluster type.
See Also:
  - `SubspaceCluster.TAGS_CLUSTERTYPE`

### 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:
  - `SubspaceCluster.TAGS_CLUSTERSUBTYPE`

### setClusterSubType

public void setClusterSubType(SelectedTag value)
Sets the cluster sub type.

Parameters:
  `value` - the new cluster sub type.
See Also:
  - `SubspaceCluster.TAGS_CLUSTERSUBTYPE`

### 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

### setMeanStddev

public void setMeanStddev(String meanstddev) throws Exception
Sets mean and standarddeviation.

Parameters:
  `meanstddev` - 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

### getMeanStddev

public String getMeanStddev()
returns the current mean/stddev setup

### meanStddevTipText

public String meanStddevTipText()
Returns the tip text for this property

Returns:
  tip text for this property suitable for displaying in the explorer/experimenter gui

### setValuesList

public void setValuesList(String fromToList, double[] first, double[] second, String optionLetter) throws Exception
Sets the ranges for each attribute.

Parameters:
  `fromToList` - the string containing the upper and lower boundary for instances per cluster separated by ..
  `first` - the "from's"
  `second` - the "to's"
  `optionLetter` - the option, from which the list came
Throws:
  `Exception` - if values are not correct in number or value

### getRevision

public String getRevision()
Returns the revision string.

Returns:
  the revision