public class SpreadSubsample extends Filter implements SupervisedFilter, OptionHandler, Randomizable, WeightedAttributesHandler
-S <num> Specify the random number seed (default 1)
-M <num> The maximum class distribution spread. 0 = no maximum spread, 1 = uniform distribution, 10 = allow at most a 10:1 ratio between the classes (default 0)
-W Adjust weights so that total weight per class is maintained. Individual instance weighting is not preserved. (default no weights adjustment
-X <num> The maximum count for any class value (default 0 = unlimited).
Constructor and Description |
---|
SpreadSubsample() |
Modifier and Type | Method and Description |
---|---|
java.lang.String |
adjustWeightsTipText()
Returns the tip text for this property
|
boolean |
batchFinished()
Signify that this batch of input to the filter is finished.
|
java.lang.String |
distributionSpreadTipText()
Returns the tip text for this property
|
boolean |
getAdjustWeights()
Returns true if instance weights will be adjusted to maintain total weight
per class.
|
Capabilities |
getCapabilities()
Returns the Capabilities of this filter.
|
double |
getDistributionSpread()
Gets the value for the distribution spread
|
double |
getMaxCount()
Gets the value for the max count
|
java.lang.String[] |
getOptions()
Gets the current settings of the filter.
|
int |
getRandomSeed()
Gets the random number seed.
|
java.lang.String |
getRevision()
Returns the revision string.
|
int |
getSeed()
Gets the seed for the random number generations
|
java.lang.String |
globalInfo()
Returns a string describing this filter
|
boolean |
input(Instance instance)
Input an instance for filtering.
|
java.util.Enumeration<Option> |
listOptions()
Returns an enumeration describing the available options.
|
static void |
main(java.lang.String[] argv)
Main method for testing this class.
|
java.lang.String |
maxCountTipText()
Returns the tip text for this property
|
java.lang.String |
randomSeedTipText()
Returns the tip text for this property
|
void |
setAdjustWeights(boolean newAdjustWeights)
Sets whether the instance weights will be adjusted to maintain total weight
per class.
|
void |
setDistributionSpread(double spread)
Sets the value for the distribution spread
|
boolean |
setInputFormat(Instances instanceInfo)
Sets the format of the input instances.
|
void |
setMaxCount(double maxcount)
Sets the value for the max count
|
void |
setOptions(java.lang.String[] options)
Parses a given list of options.
|
void |
setRandomSeed(int newSeed)
Sets the random number seed.
|
void |
setSeed(int seed)
Set the seed for random number generation.
|
batchFilterFile, 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
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
makeCopy
public java.lang.String globalInfo()
public java.lang.String adjustWeightsTipText()
public boolean getAdjustWeights()
public void setAdjustWeights(boolean newAdjustWeights)
newAdjustWeights
- whether to adjust weightspublic java.util.Enumeration<Option> listOptions()
listOptions
in interface OptionHandler
listOptions
in class Filter
public void setOptions(java.lang.String[] options) throws java.lang.Exception
-S <num> Specify the random number seed (default 1)
-M <num> The maximum class distribution spread. 0 = no maximum spread, 1 = uniform distribution, 10 = allow at most a 10:1 ratio between the classes (default 0)
-W Adjust weights so that total weight per class is maintained. Individual instance weighting is not preserved. (default no weights adjustment
-X <num> The maximum count for any class value (default 0 = unlimited).
setOptions
in interface OptionHandler
setOptions
in class Filter
options
- the list of options as an array of stringsjava.lang.Exception
- if an option is not supportedpublic java.lang.String[] getOptions()
getOptions
in interface OptionHandler
getOptions
in class Filter
public java.lang.String distributionSpreadTipText()
public void setDistributionSpread(double spread)
spread
- the new distribution spreadpublic double getDistributionSpread()
public java.lang.String maxCountTipText()
public void setMaxCount(double maxcount)
maxcount
- the new max countpublic double getMaxCount()
public java.lang.String randomSeedTipText()
public int getRandomSeed()
public void setRandomSeed(int newSeed)
newSeed
- the new random number seed.@ProgrammaticProperty public void setSeed(int seed)
Randomizable
setSeed
in interface Randomizable
seed
- the seed@ProgrammaticProperty public int getSeed()
Randomizable
getSeed
in interface Randomizable
public Capabilities getCapabilities()
getCapabilities
in interface CapabilitiesHandler
getCapabilities
in class Filter
Capabilities
public boolean setInputFormat(Instances instanceInfo) throws java.lang.Exception
setInputFormat
in class Filter
instanceInfo
- an Instances object containing the input instance
structure (any instances contained in the object are ignored -
only the structure is required).UnassignedClassException
- if no class attribute has been set.UnsupportedClassTypeException
- if the class attribute is not
nominal.java.lang.Exception
- if the inputFormat can't be set successfullypublic boolean input(Instance instance)
public boolean batchFinished()
batchFinished
in class Filter
java.lang.IllegalStateException
- if no input structure has been definedpublic java.lang.String getRevision()
getRevision
in interface RevisionHandler
getRevision
in class Filter
public static void main(java.lang.String[] argv)
argv
- should contain arguments to the filter: use -h for help