Class MakeIndicator
- java.lang.Object
-
- weka.filters.Filter
-
- weka.filters.unsupervised.attribute.MakeIndicator
-
- All Implemented Interfaces:
java.io.Serializable,CapabilitiesHandler,CapabilitiesIgnorer,CommandlineRunnable,OptionHandler,RevisionHandler,WeightedAttributesHandler,WeightedInstancesHandler,StreamableFilter,UnsupervisedFilter
public class MakeIndicator extends Filter implements UnsupervisedFilter, StreamableFilter, OptionHandler, WeightedAttributesHandler, WeightedInstancesHandler
A filter that creates a new dataset with a Boolean attribute replacing a nominal attribute. In the new dataset, a value of 1 is assigned to an instance that exhibits a value in the given range of attribute values, and a value of 0 is assigned to an instance that does not. The Boolean attribute is coded as numeric by default. Valid options are:-C <col> Sets the attribute index.
-V <index1,index2-index4,...> Specify the list of values to indicate. First and last are valid indexes (default last)
-N <index> Set if new Boolean attribute nominal.
- Version:
- $Revision: 14534 $
- Author:
- Eibe Frank (eibe@cs.waikato.ac.nz)
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description MakeIndicator()Constructor
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.StringattributeIndexTipText()java.lang.StringgetAttributeIndex()Get the index of the attribute used.CapabilitiesgetCapabilities()Returns the Capabilities of this filter.booleangetNumeric()Check if new attribute is to be numeric.java.lang.String[]getOptions()Gets the current settings of the filter.java.lang.StringgetRevision()Returns the revision string.java.lang.StringgetValueIndices()Get the indices of the indicator values.RangegetValueRange()Get the range containing the indicator values.java.lang.StringglobalInfo()booleaninput(Instance instance)Input an instance for filtering.java.util.Enumeration<Option>listOptions()Returns an enumeration describing the available options.static voidmain(java.lang.String[] argv)Main method for testing this class.java.lang.StringnumericTipText()voidsetAttributeIndex(java.lang.String attIndex)Sets index of the attribute used.booleansetInputFormat(Instances instanceInfo)Sets the format of the input instances.voidsetNumeric(boolean bool)Sets if the new Attribute is to be numeric.voidsetOptions(java.lang.String[] options)Parses a given list of options.voidsetValueIndex(int index)Sets index of the indicator value.voidsetValueIndices(java.lang.String range)Sets indices of the indicator values.voidsetValueIndicesArray(int[] indices)Set which attributes are to be deleted (or kept if invert is true)java.lang.StringvalueIndicesTipText()-
Methods inherited from class weka.filters.Filter
batchFilterFile, batchFinished, debugTipText, doNotCheckCapabilitiesTipText, filterFile, getCapabilities, getCopyOfInputFormat, getDebug, getDoNotCheckCapabilities, getOutputFormat, isFirstBatchDone, isNewBatch, isOutputFormatDefined, makeCopies, makeCopy, mayRemoveInstanceAfterFirstBatchDone, numPendingOutput, output, outputPeek, postExecution, preExecution, run, runFilter, setDebug, setDoNotCheckCapabilities, toString, useFilter, wekaStaticWrapper
-
-
-
-
Method Detail
-
getCapabilities
public Capabilities getCapabilities()
Returns the Capabilities of this filter.- Specified by:
getCapabilitiesin interfaceCapabilitiesHandler- Overrides:
getCapabilitiesin classFilter- Returns:
- the capabilities of this object
- See Also:
Capabilities
-
setInputFormat
public boolean setInputFormat(Instances instanceInfo) throws java.lang.Exception
Sets the format of the input instances.- Overrides:
setInputFormatin classFilter- 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:
UnsupportedAttributeTypeException- the selecte attribute is not nominalUnsupportedAttributeTypeException- the selecte attribute has fewer than two values.java.lang.Exception- if the inputFormat can't be set successfully
-
input
public boolean input(Instance instance)
Input an instance for filtering. The instance is processed and made available for output immediately.
-
listOptions
public java.util.Enumeration<Option> listOptions()
Returns an enumeration describing the available options.- Specified by:
listOptionsin interfaceOptionHandler- Overrides:
listOptionsin classFilter- Returns:
- an enumeration of all the available options.
-
setOptions
public void setOptions(java.lang.String[] options) throws java.lang.ExceptionParses a given list of options. Valid options are:-C <col> Sets the attribute index.
-V <index1,index2-index4,...> Specify the list of values to indicate. First and last are valid indexes (default last)
-N <index> Set if new Boolean attribute nominal.
- Specified by:
setOptionsin interfaceOptionHandler- Overrides:
setOptionsin classFilter- 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:
getOptionsin interfaceOptionHandler- Overrides:
getOptionsin classFilter- Returns:
- an array of strings suitable for passing to setOptions
-
globalInfo
public java.lang.String globalInfo()
- Returns:
- a description of the filter suitable for displaying in the explorer/experimenter gui
-
attributeIndexTipText
public java.lang.String attributeIndexTipText()
- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
getAttributeIndex
public java.lang.String getAttributeIndex()
Get the index of the attribute used.- Returns:
- the index of the attribute
-
setAttributeIndex
public void setAttributeIndex(java.lang.String attIndex)
Sets index of the attribute used.- Parameters:
attIndex- the index of the attribute
-
getValueRange
public Range getValueRange()
Get the range containing the indicator values.- Returns:
- the range containing the indicator values
-
valueIndicesTipText
public java.lang.String valueIndicesTipText()
- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
getValueIndices
public java.lang.String getValueIndices()
Get the indices of the indicator values.- Returns:
- the indices of the indicator values
-
setValueIndices
public void setValueIndices(java.lang.String range)
Sets indices of the indicator values.- Parameters:
range- the string representation of the indicator value indices- See Also:
Range
-
setValueIndex
public void setValueIndex(int index)
Sets index of the indicator value.- Parameters:
index- the index of the indicator value
-
setValueIndicesArray
public void setValueIndicesArray(int[] indices)
Set which attributes are to be deleted (or kept if invert is true)- Parameters:
indices- an array containing indexes of attributes to select. Since the array will typically come from a program, attributes are indexed from 0.
-
numericTipText
public java.lang.String numericTipText()
- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
setNumeric
public void setNumeric(boolean bool)
Sets if the new Attribute is to be numeric.- Parameters:
bool- true if new Attribute is to be numeric
-
getNumeric
public boolean getNumeric()
Check if new attribute is to be numeric.- Returns:
- true if new attribute is to be numeric
-
getRevision
public java.lang.String getRevision()
Returns the revision string.- Specified by:
getRevisionin interfaceRevisionHandler- Overrides:
getRevisionin classFilter- Returns:
- the revision
-
main
public static void main(java.lang.String[] argv)
Main method for testing this class.- Parameters:
argv- should contain arguments to the filter: use -h for help
-
-