Package weka.attributeSelection

# Class OneRAttributeEval

java.lang.Object
weka.attributeSelection.ASEvaluation
weka.attributeSelection.OneRAttributeEval

All Implemented Interfaces:
  `Serializable`, `AttributeEvaluator`, `CapabilitiesHandler`, `OptionHandler`, `RevisionHandler`

public class OneRAttributeEval extends ASEvaluation implements AttributeEvaluator, OptionHandler
OneRAttributeEval :
Evaluates the worth of an attribute by using the OneR classifier.

Valid options are:

     -S <seed>
      Random number seed for cross validation
      (default = 1)

     -F <folds>
      Number of folds for cross validation
      (default = 10)

     -D
      Use training data for evaluation rather than cross validaton

     -B <minimum bucket size>
      Minimum number of objects in a bucket
      (passed on to OneR, default = 6)

Version:
  $Revision: 11219 $
Author:
  Mark Hall (mhall@cs.waikato.ac.nz)
See Also:
  - Serialized Form

## Constructor Summary

Constructors
Constructor
Description
`OneRAttributeEval()`
Constructor

## Method Summary

Modifier and Type
Method
Description
`void`
`buildEvaluator(Instances data)`
Initializes a OneRAttribute attribute evaluator.
`double`
`evaluateAttribute(int attribute)`
evaluates an individual attribute by measuring the amount of information gained about the class given the attribute.
`String`
`evalUsingTrainingDataTipText()`
Returns a string for this option suitable for display in the gui as a tip text
`String`
`foldsTipText()`
Returns a string for this option suitable for display in the gui as a tip text
`Capabilities`
`getCapabilities()`
Returns the capabilities of this evaluator.
`boolean`
`getEvalUsingTrainingData()`
Returns true if the training data is to be used for evaluation
`int`
`getFolds()`
Get the number of folds used for cross validation
`int`
`getMinimumBucketSize()`
Get the minimum bucket size used by oneR
`String[]`
`getOptions()`
returns the current setup.
`String`
`getRevision()`
Returns the revision string.
`int`
`getSeed()`
Get the random number seed
`String`
`globalInfo()`
Returns a string describing this attribute evaluator
`Enumeration`
`listOptions()`
Returns an enumeration describing the available options.
`static void`
`main(String[] args)`
Main method for testing this class.
`String`
`minimumBucketSizeTipText()`
Returns a string for this option suitable for display in the gui as a tip text
`int[]`
`postProcess(int[] attributeSet)`
Provides a chance for a attribute evaluator to do any special post processing of the selected attribute set.
`String`
`seedTipText()`
Returns a string for this option suitable for display in the gui as a tip text
`void`
`setEvalUsingTrainingData(boolean e)`
Use the training data to evaluate attributes rather than cross validation
`void`
`setFolds(int folds)`
Set the number of folds to use for cross validation
`void`
`setMinimumBucketSize(int minB)`
Set the minumum bucket size used by OneR
`void`
`setOptions(String[] options)`
Parses a given list of options.
`void`
`setSeed(int seed)`
Set the random number seed for cross validation
`String`
`toString()`
Return a description of the evaluator

### Methods inherited from class weka.attributeSelection.ASEvaluation

`clean, forName, makeCopies`

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

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

## Constructor Details

### OneRAttributeEval

public OneRAttributeEval()
Constructor

## Method Details

### globalInfo

public String globalInfo()
Returns a string describing this attribute evaluator

Returns:
  a description of the evaluator suitable for displaying in the explorer/experimenter gui

### seedTipText

public String seedTipText()
Returns a string for this option suitable for display in the gui as a tip text

Returns:
  a string describing this option

### setSeed

public void setSeed(int seed)
Set the random number seed for cross validation

Parameters:
  `seed` - the seed to use

### getSeed

public int getSeed()
Get the random number seed

Returns:
  an `int` value

### foldsTipText

public String foldsTipText()
Returns a string for this option suitable for display in the gui as a tip text

Returns:
  a string describing this option

### setFolds

public void setFolds(int folds)
Set the number of folds to use for cross validation

Parameters:
  `folds` - the number of folds

### getFolds

public int getFolds()
Get the number of folds used for cross validation

Returns:
  the number of folds

### evalUsingTrainingDataTipText

public String evalUsingTrainingDataTipText()
Returns a string for this option suitable for display in the gui as a tip text

Returns:
  a string describing this option

### setEvalUsingTrainingData

public void setEvalUsingTrainingData(boolean e)
Use the training data to evaluate attributes rather than cross validation

Parameters:
  `e` - true if training data is to be used for evaluation

### minimumBucketSizeTipText

public String minimumBucketSizeTipText()
Returns a string for this option suitable for display in the gui as a tip text

Returns:
  a string describing this option

### setMinimumBucketSize

public void setMinimumBucketSize(int minB)
Set the minumum bucket size used by OneR

Parameters:
  `minB` - the minimum bucket size to use

### getMinimumBucketSize

public int getMinimumBucketSize()
Get the minimum bucket size used by oneR

Returns:
  the minimum bucket size used

### getEvalUsingTrainingData

public boolean getEvalUsingTrainingData()
Returns true if the training data is to be used for evaluation

Returns:
  true if training data is to be used for evaluation

### listOptions

public Enumeration listOptions()
Returns an enumeration describing the available options.

Specified by:
  `listOptions` in interface `OptionHandler`
Returns:
  an enumeration of all the available options.

### setOptions

public void setOptions(String[] options) throws Exception
Parses a given list of options.

Valid options are:

     -S <seed>
      Random number seed for cross validation
      (default = 1)

     -F <folds>
      Number of folds for cross validation
      (default = 10)

     -D
      Use training data for evaluation rather than cross validaton

     -B <minimum bucket size>
      Minimum number of objects in a bucket
      (passed on to OneR, default = 6)

Specified by:
  `setOptions` in interface `OptionHandler`
Parameters:
  `options` - the list of options as an array of strings
Throws:
  `Exception` - if an option is not supported

### getOptions

public String[] getOptions()
returns the current setup.

Specified by:
  `getOptions` in interface `OptionHandler`
Returns:
  the options of the current setup

### getCapabilities

public Capabilities getCapabilities()
Returns the capabilities of this evaluator.

Specified by:
  `getCapabilities` in interface `CapabilitiesHandler`
Overrides:
  `getCapabilities` in class `ASEvaluation`
Returns:
  the capabilities of this evaluator
See Also:
  - `Capabilities`

### buildEvaluator

public void buildEvaluator(Instances data) throws Exception
Initializes a OneRAttribute attribute evaluator. Discretizes all attributes that are numeric.

Specified by:
  `buildEvaluator` in class `ASEvaluation`
Parameters:
  `data` - set of instances serving as training data
Throws:
  `Exception` - if the evaluator has not been generated successfully

### evaluateAttribute

public double evaluateAttribute(int attribute) throws Exception
evaluates an individual attribute by measuring the amount of information gained about the class given the attribute.

Specified by:
  `evaluateAttribute` in interface `AttributeEvaluator`
Parameters:
  `attribute` - the index of the attribute to be evaluated
Returns:
  the "merit" of the attribute
Throws:
  `Exception` - if the attribute could not be evaluated

### toString

public String toString()
Return a description of the evaluator

Overrides:
  `toString` in class `Object`
Returns:
  description as a string

### getRevision

public String getRevision()
Returns the revision string.

Specified by:
  `getRevision` in interface `RevisionHandler`
Overrides:
  `getRevision` in class `ASEvaluation`
Returns:
  the revision

### postProcess

public int[] postProcess(int[] attributeSet)
Description copied from class: `ASEvaluation`
Provides a chance for a attribute evaluator to do any special post processing of the selected attribute set.

Overrides:
  `postProcess` in class `ASEvaluation`
Parameters:
  `attributeSet` - the set of attributes found by the search
Returns:
  a possibly ranked list of postprocessed attributes

### main

public static void main(String[] args)
Main method for testing this class.

Parameters:
  `args` - the options