All Packages Class Hierarchy This Package Previous Next Index WEKA's home
Class weka.filters.AttributeExpressionFilter
java.lang.Object
|
+----weka.filters.Filter
|
+----weka.filters.AttributeExpressionFilter
- public class AttributeExpressionFilter
- extends Filter
- implements 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.10 $
- Author:
- Mark Hall (mhall@cs.waikato.ac.nz)
AttributeExpressionFilter()
-
debugTipText()
- Returns the tip text for this property
expressionTipText()
- Returns the tip text for this property
getDebug()
- Gets whether debug is set
getExpression()
- Get the expression
getName()
- Returns the name of the new attribute
getOptions()
- Gets the current settings of the filter.
globalInfo()
- Returns a string describing this filter
input(Instance)
- Input an instance for filtering.
listOptions()
- Returns an enumeration describing the available options
main(String[])
- Main method for testing this class.
nameTipText()
- Returns the tip text for this property
setDebug(boolean)
- Set debug mode.
setExpression(String)
- Set the expression to apply
setInputFormat(Instances)
- Sets the format of the input instances.
setName(String)
- Set the name for the new attribute.
setOptions(String[])
- Parses a list of options for this object.
AttributeExpressionFilter
public AttributeExpressionFilter()
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
- 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.
- 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.
- 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.
- 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
- Overrides:
- setInputFormat in class Filter
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.
- 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.
- Overrides:
- input in class Filter
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
All Packages Class Hierarchy This Package Previous Next Index WEKA's home