Overview | Package | Class | Tree | Deprecated | Index | Help | Weka's home
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## weka.filters.unsupervised.attribute
Class AddExpression

    java.lang.Object
      weka.filters.Filter
          weka.filters.unsupervised.attribute.AddExpression

All Implemented Interfaces:
  java.io.Serializable, OptionHandler, StreamableFilter, UnsupervisedFilter

    public class AddExpression

extends Filter
implements UnsupervisedFilter, StreamableFilter, OptionHandler

Applys a mathematical expression involving attributes and numeric constants to a dataset. A new attribute is appended after the last attribute that contains the result of applying the expression. Supported operators are: +, -, *, /, ^, log, abs, cos, exp, sqrt, floor, ceil, rint, tan, sin, (, ). Attributes are specified by prefixing with 'a', eg. a7 is attribute number 7 (starting from 1).

Valid filter-specific options are:

-E expression
Specify the expression to apply. Eg. a1^2*a5/log(a7*4.0).

-N name
Specify a name for the new attribute. Default is to name it with the expression provided with the -E option.

-D
Debug. Names the attribute with the postfix parse of the expression.

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

Constructor Summary
`AddExpression()`

Method Summary
`java.lang.String` | `debugTipText()` Returns the tip text for this property
`java.lang.String` | `expressionTipText()` Returns the tip text for this property
`boolean` | `getDebug()` Gets whether debug is set
`java.lang.String` | `getExpression()` Get the expression
`java.lang.String` | `getName()` Returns the name of the new attribute
`java.lang.String[]` | `getOptions()` Gets the current settings of the filter.
`java.lang.String` | `globalInfo()` Returns a string describing this filter
`boolean` | `input(Instance instance)` Input an instance for filtering.
`java.util.Enumeration` | `listOptions()` Returns an enumeration describing the available options.
`static void` | `main(java.lang.String[] args)` Main method for testing this class.
`java.lang.String` | `nameTipText()` Returns the tip text for this property
`void` | `setDebug(boolean d)` Set debug mode.
`void` | `setExpression(java.lang.String expr)` Set the expression to apply
`boolean` | `setInputFormat(Instances instanceInfo)` Sets the format of the input instances.
`void` | `setName(java.lang.String name)` Set the name for the new attribute.
`void` | `setOptions(java.lang.String[] options)` Parses a list of options for this object.

Methods inherited from class weka.filters.Filter
`batchFilterFile, batchFinished, filterFile, getOutputFormat, inputFormat, isOutputFormatDefined, numPendingOutput, output, outputFormat, outputPeek, useFilter`

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### AddExpression

    public AddExpression()

Method Detail

### globalInfo

    public java.lang.String globalInfo()

  Returns a string describing this filter

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

### listOptions

    public java.util.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(java.lang.String[] options)
                    throws java.lang.Exception

  Parses a list of options for this object. Valid options are:

  -E expression
  Specify the expression to apply. Eg. a1^2*a5/log(a7*4.0).

  -N name
  Specify a name for the new attribute. Default is to name it with the expression provided with the -E option.

  -D
  Debug. Names the attribute with the postfix parse of the expression.

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

### getOptions

    public java.lang.String[] getOptions()

  Gets the current settings of the filter.

  Specified by:
    `getOptions` in interface `OptionHandler`
  Returns:
    an array of strings suitable for passing to setOptions

### nameTipText

    public java.lang.String nameTipText()

  Returns the tip text for this property

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

### setName

    public void setName(java.lang.String name)

  Set the name for the new attribute. The string "expression" can be used to make the name of the new attribute equal to the expression provided.

  Parameters:
    `name` - the name of the new attribute

### getName

    public java.lang.String getName()

  Returns the name of the new attribute

  Returns:
    the name of the new attribute

### debugTipText

    public java.lang.String debugTipText()

  Returns the tip text for this property

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

### setDebug

    public void setDebug(boolean d)

  Set debug mode. Causes the new attribute to be named with the postfix parse of the expression

  Parameters:
    `d` - true if debug mode is to be used

### getDebug

    public boolean getDebug()

  Gets whether debug is set

  Returns:
    true if debug is set

### expressionTipText

    public java.lang.String expressionTipText()

  Returns the tip text for this property

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

### setExpression

    public void setExpression(java.lang.String expr)

  Set the expression to apply

  Parameters:
    `expr` - a mathematical expression to apply

### getExpression

    public java.lang.String getExpression()

  Get the expression

  Returns:
    the expression

### setInputFormat

    public boolean setInputFormat(Instances instanceInfo)
                           throws java.lang.Exception

  Sets the format of the input instances.

  Overrides:
    `setInputFormat` in class `Filter`
  Parameters:
    `instanceInfo` - an Instances object containing the input instance structure (any instances contained in the object are ignored - only the structure is required).
  Returns:
    true if the outputFormat may be collected immediately
  Throws:
    `java.lang.Exception` - if the format couldn't be set successfully

### input

    public boolean input(Instance instance)
                  throws java.lang.Exception

  Input an instance for filtering. Ordinarily the instance is processed and made available for output immediately. Some filters require all instances be read before producing output.

  Overrides:
    `input` in class `Filter`
  Parameters:
    `instance` - the input instance
  Returns:
    true if the filtered instance may now be collected with output().
  Throws:
    `java.lang.IllegalStateException` - if no input format has been defined.
    `java.lang.Exception` - if there was a problem during the filtering.

### main

    public static void main(java.lang.String[] args)

  Main method for testing this class.

  Parameters:
    `args` - should contain arguments to the filter: use -h for help

Overview | Package | Class | Tree | Deprecated | Index | Help | Weka's home
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD