|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--weka.filters.Filter | +--weka.filters.unsupervised.attribute.PotentialClassIgnorer | +--weka.filters.unsupervised.attribute.Discretize
An instance filter that discretizes a range of numeric attributes in the dataset into nominal attributes. Discretization is by simple binning. Skips the class attribute if set.
Valid filter-specific options are:
-B num
Specifies the (maximum) number of bins to divide numeric attributes into.
Default = 10.
-M num
Specifies the desired weight of instances per bin for equal-frequency
binning. If this is set to a positive number then the -B option will be
ignored. Default = -1.
-F
Use equal-frequency instead of equal-width discretization if
class-based discretisation is turned off.
-O
Optimize the number of bins using a leave-one-out estimate of the
entropy (for equal-width binning). If this is set then the -B option
will be ignored.
-R col1,col2-col4,...
Specifies list of columns to Discretize. First
and last are valid indexes. (default: first-last)
-V
Invert matching sense.
-D
Make binary nominal attributes.
Constructor Summary | |
Discretize()
Constructor - initialises the filter |
|
Discretize(java.lang.String cols)
Another constructor |
Method Summary | |
java.lang.String |
attributeIndicesTipText()
Returns the tip text for this property |
boolean |
batchFinished()
Signifies that this batch of input to the filter is finished. |
java.lang.String |
binsTipText()
Returns the tip text for this property |
java.lang.String |
desiredWeightOfInstancesPerIntervalTipText()
Returns the tip text for this property |
java.lang.String |
findNumBinsTipText()
Returns the tip text for this property |
java.lang.String |
getAttributeIndices()
Gets the current range selection |
int |
getBins()
Gets the number of bins numeric attributes will be divided into |
double[] |
getCutPoints(int attributeIndex)
Gets the cut points for an attribute |
double |
getDesiredWeightOfInstancesPerInterval()
Get the DesiredWeightOfInstancesPerInterval value. |
boolean |
getFindNumBins()
Get the value of FindNumBins. |
boolean |
getInvertSelection()
Gets whether the supplied columns are to be removed or kept |
boolean |
getMakeBinary()
Gets whether binary attributes should be made for discretized ones. |
java.lang.String[] |
getOptions()
Gets the current settings of the filter. |
boolean |
getUseEqualFrequency()
Get the value of UseEqualFrequency. |
java.lang.String |
globalInfo()
Returns a string describing this filter |
boolean |
input(Instance instance)
Input an instance for filtering. |
java.lang.String |
invertSelectionTipText()
Returns the tip text for this property |
java.util.Enumeration |
listOptions()
Gets an enumeration describing the available options. |
static void |
main(java.lang.String[] argv)
Main method for testing this class. |
java.lang.String |
makeBinaryTipText()
Returns the tip text for this property |
void |
setAttributeIndices(java.lang.String rangeList)
Sets which attributes are to be Discretized (only numeric attributes among the selection will be Discretized). |
void |
setAttributeIndicesArray(int[] attributes)
Sets which attributes are to be Discretized (only numeric attributes among the selection will be Discretized). |
void |
setBins(int numBins)
Sets the number of bins to divide each selected numeric attribute into |
void |
setDesiredWeightOfInstancesPerInterval(double newDesiredNumber)
Set the DesiredWeightOfInstancesPerInterval value. |
void |
setFindNumBins(boolean newFindNumBins)
Set the value of FindNumBins. |
boolean |
setInputFormat(Instances instanceInfo)
Sets the format of the input instances. |
void |
setInvertSelection(boolean invert)
Sets whether selected columns should be removed or kept. |
void |
setMakeBinary(boolean makeBinary)
Sets whether binary attributes should be made for discretized ones. |
void |
setOptions(java.lang.String[] options)
Parses the options for this object. |
void |
setUseEqualFrequency(boolean newUseEqualFrequency)
Set the value of UseEqualFrequency. |
java.lang.String |
useEqualFrequencyTipText()
Returns the tip text for this property |
Methods inherited from class weka.filters.unsupervised.attribute.PotentialClassIgnorer |
getOutputFormat, setIgnoreClass |
Methods inherited from class weka.filters.Filter |
batchFilterFile, filterFile, 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 |
public Discretize()
public Discretize(java.lang.String cols)
Method Detail |
public java.util.Enumeration listOptions()
listOptions
in interface OptionHandler
public void setOptions(java.lang.String[] options) throws java.lang.Exception
-B num
Specifies the (maximum) number of bins to divide numeric attributes into.
Default = 10.
-M num
Specifies the desired weight of instances per bin for equal-frequency
binning. If this is set to a positive number then the -B option will be
ignored. Default = -1.
-F
Use equal-frequency instead of equal-width discretization if
class-based discretisation is turned off.
-O
Optimize the number of bins using a leave-one-out estimate of the
entropy (for equal-width binning). If this is set then the -B
option will be ignored.
-R col1,col2-col4,...
Specifies list of columns to Discretize. First
and last are valid indexes. (default none)
-V
Invert matching sense.
-D
Make binary nominal attributes.
setOptions
in interface OptionHandler
options
- the list of options as an array of strings
java.lang.Exception
- if an option is not supportedpublic java.lang.String[] getOptions()
getOptions
in interface OptionHandler
public boolean setInputFormat(Instances instanceInfo) throws java.lang.Exception
setInputFormat
in class PotentialClassIgnorer
instanceInfo
- an Instances object containing the input instance
structure (any instances contained in the object are ignored - only the
structure is required).
java.lang.Exception
- if the input format can't be set successfullypublic boolean input(Instance instance)
input
in class Filter
instance
- the input instance
java.lang.IllegalStateException
- if no input format has been defined.public boolean batchFinished()
batchFinished
in class Filter
java.lang.IllegalStateException
- if no input structure has been definedpublic java.lang.String globalInfo()
public java.lang.String findNumBinsTipText()
public boolean getFindNumBins()
public void setFindNumBins(boolean newFindNumBins)
newFindNumBins
- Value to assign to FindNumBins.public java.lang.String makeBinaryTipText()
public boolean getMakeBinary()
public void setMakeBinary(boolean makeBinary)
makeBinary
- if binary attributes are to be madepublic java.lang.String desiredWeightOfInstancesPerIntervalTipText()
public double getDesiredWeightOfInstancesPerInterval()
public void setDesiredWeightOfInstancesPerInterval(double newDesiredNumber)
newDesiredNumber
- The new DesiredNumber value.public java.lang.String useEqualFrequencyTipText()
public boolean getUseEqualFrequency()
public void setUseEqualFrequency(boolean newUseEqualFrequency)
newUseEqualFrequency
- Value to assign to UseEqualFrequency.public java.lang.String binsTipText()
public int getBins()
public void setBins(int numBins)
numBins
- the number of binspublic java.lang.String invertSelectionTipText()
public boolean getInvertSelection()
public void setInvertSelection(boolean invert)
invert
- the new invert settingpublic java.lang.String attributeIndicesTipText()
public java.lang.String getAttributeIndices()
public void setAttributeIndices(java.lang.String rangeList)
rangeList
- a string representing the list of attributes. Since
the string will typically come from a user, attributes are indexed from
1. java.lang.IllegalArgumentException
- if an invalid range list is suppliedpublic void setAttributeIndicesArray(int[] attributes)
attributes
- an array containing indexes of attributes to Discretize.
Since the array will typically come from a program, attributes are indexed
from 0.
java.lang.IllegalArgumentException
- if an invalid set of ranges
is suppliedpublic double[] getCutPoints(int attributeIndex)
public static void main(java.lang.String[] argv)
argv
- should contain arguments to the filter: use -h for help
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Copyright (c) 2003 David Lindsay, Computer Learning Research Centre, Dept. Computer Science, Royal Holloway, University of London