Class LogTransform
- java.lang.Object
-
- weka.filters.Filter
-
- weka.filters.SimpleFilter
-
- weka.filters.SimpleStreamFilter
-
- weka.filters.unsupervised.attribute.LogTransform
-
- All Implemented Interfaces:
Serializable,weka.core.CapabilitiesHandler,weka.core.CapabilitiesIgnorer,weka.core.CommandlineRunnable,weka.core.OptionHandler,weka.core.RevisionHandler,weka.filters.StreamableFilter,weka.filters.UnsupervisedFilter
public class LogTransform extends weka.filters.SimpleStreamFilter implements weka.filters.UnsupervisedFilterTransforms all numeric attributes in the specified range using a log-transform.
The class attribute is omitted.
If a value less or equal to zero is encountered, a missing value is output.
Valid options are:
-output-debug-info If set, filter is run in debug mode and may output additional info to the console
-do-not-check-capabilities If set, filter capabilities are not checked when input format is set (use with caution).
-R <range specification> The range of attributes to process. (default: first-last)
-add-one Whether to add '1' to the values before transform. Useful when dealing with counts, avoiding 0 counts. (default: off)
- Version:
- $Revision: 4521 $
- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected booleanm_AddOneIf true output nominal, false output numeric .protected weka.core.Rangem_AttributeRangethe range of attributes to log-transform.
-
Constructor Summary
Constructors Constructor Description LogTransform()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description StringaddOneTipText()Returns the tip text for this property.StringattributeRangeTipText()Returns the tip text for this property.protected weka.core.InstancesdetermineOutputFormat(weka.core.Instances inputFormat)Determines the output format based on the input format and returns this.booleangetAddOne()Returns whether to add '1' to the values before log-transform.StringgetAttributeRange()Returns the range of attributes to process.weka.core.CapabilitiesgetCapabilities()Returns the Capabilities of this filter.String[]getOptions()Gets the current settings of the filter.StringgetRevision()Returns the revision string.StringglobalInfo()Returns a string describing this classifier.EnumerationlistOptions()Returns an enumeration describing the available options.static voidmain(String[] args)Main method for testing this class.protected weka.core.Instanceprocess(weka.core.Instance instance)processes the given instance (may change the provided instance) and returns the modified version.voidsetAddOne(boolean value)Sets whether to add '1' to the values before log-transform.voidsetAttributeRange(String value)Sets the range of attributes to process.voidsetOptions(String[] options)Parses a list of options for this object.-
Methods inherited from class weka.filters.SimpleStreamFilter
batchFinished, hasImmediateOutputFormat, input, preprocess, process
-
Methods inherited from class weka.filters.Filter
batchFilterFile, bufferInput, copyValues, copyValues, debugTipText, doNotCheckCapabilitiesTipText, filterFile, flushInput, getCapabilities, getDebug, getDoNotCheckCapabilities, getInputFormat, getOutputFormat, initInputLocators, initOutputLocators, inputFormatPeek, isFirstBatchDone, isNewBatch, isOutputFormatDefined, makeCopies, makeCopy, mayRemoveInstanceAfterFirstBatchDone, numPendingOutput, output, outputFormatPeek, outputPeek, postExecution, preExecution, push, push, resetQueue, run, runFilter, setDebug, setDoNotCheckCapabilities, setOutputFormat, testInputFormat, toString, useFilter, wekaStaticWrapper
-
-
-
-
Method Detail
-
globalInfo
public String globalInfo()
Returns a string describing this classifier.- Specified by:
globalInfoin classweka.filters.SimpleFilter- Returns:
- a description of the classifier suitable for displaying in the explorer/experimenter gui
-
listOptions
public Enumeration listOptions()
Returns an enumeration describing the available options.- Specified by:
listOptionsin interfaceweka.core.OptionHandler- Overrides:
listOptionsin classweka.filters.Filter- Returns:
- an enumeration of all the available options.
-
setOptions
public void setOptions(String[] options) throws Exception
Parses a list of options for this object. Also resets the state of the filter (this reset doesn't affect the options).- Specified by:
setOptionsin interfaceweka.core.OptionHandler- Overrides:
setOptionsin classweka.filters.Filter- Parameters:
options- the list of options as an array of strings- Throws:
Exception- if an option is not supported- See Also:
SimpleFilter.reset()
-
getOptions
public String[] getOptions()
Gets the current settings of the filter.- Specified by:
getOptionsin interfaceweka.core.OptionHandler- Overrides:
getOptionsin classweka.filters.Filter- Returns:
- an array of strings suitable for passing to setOptions
-
setAttributeRange
public void setAttributeRange(String value)
Sets the range of attributes to process.- Parameters:
value- the attribute range
-
getAttributeRange
public String getAttributeRange()
Returns the range of attributes to process.- Returns:
- the attribute range
-
attributeRangeTipText
public String attributeRangeTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
setAddOne
public void setAddOne(boolean value)
Sets whether to add '1' to the values before log-transform.- Parameters:
value- true if to add '1'
-
getAddOne
public boolean getAddOne()
Returns whether to add '1' to the values before log-transform.- Returns:
- true if '1' added
-
addOneTipText
public String addOneTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
getCapabilities
public weka.core.Capabilities getCapabilities()
Returns the Capabilities of this filter. Derived filters have to override this method to enable capabilities.- Specified by:
getCapabilitiesin interfaceweka.core.CapabilitiesHandler- Overrides:
getCapabilitiesin classweka.filters.Filter- Returns:
- the capabilities of this object
- See Also:
Capabilities
-
determineOutputFormat
protected weka.core.Instances determineOutputFormat(weka.core.Instances inputFormat) throws ExceptionDetermines the output format based on the input format and returns this. In case the output format cannot be returned immediately, i.e., hasImmediateOutputFormat() returns false, then this method will called from batchFinished() after the call of preprocess(Instances), in which, e.g., statistics for the actual processing step can be gathered.- Specified by:
determineOutputFormatin classweka.filters.SimpleStreamFilter- Parameters:
inputFormat- the input format to base the output format on- Returns:
- the output format
- Throws:
Exception- in case the determination goes wrong
-
process
protected weka.core.Instance process(weka.core.Instance instance) throws Exceptionprocesses the given instance (may change the provided instance) and returns the modified version.- Specified by:
processin classweka.filters.SimpleStreamFilter- Parameters:
instance- the instance to process- Returns:
- the modified data
- Throws:
Exception- in case the processing goes wrong
-
getRevision
public String getRevision()
Returns the revision string.- Specified by:
getRevisionin interfaceweka.core.RevisionHandler- Overrides:
getRevisionin classweka.filters.Filter- Returns:
- the revision
-
main
public static void main(String[] args)
Main method for testing this class.- Parameters:
args- should contain arguments to the filter: use -h for help
-
-