Package weka.experiment
Class CSVResultListener
- java.lang.Object
-
- weka.experiment.CSVResultListener
-
- All Implemented Interfaces:
java.io.Serializable
,OptionHandler
,RevisionHandler
,ResultListener
- Direct Known Subclasses:
InstancesResultListener
public class CSVResultListener extends java.lang.Object implements ResultListener, OptionHandler, RevisionHandler
Takes results from a result producer and assembles them into comma separated value form. Valid options are:-O <file name> The filename where output will be stored. Use - for stdout. (default temp file)
- Version:
- $Revision: 1.13 $
- Author:
- Len Trigg (trigg@cs.waikato.ac.nz)
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description CSVResultListener()
Sets temporary file.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
acceptResult(ResultProducer rp, java.lang.Object[] key, java.lang.Object[] result)
Just prints out each result as it is received.java.lang.String[]
determineColumnConstraints(ResultProducer rp)
Determines if there are any constraints (imposed by the destination) on the result columns to be produced by resultProducers.java.lang.String[]
getOptions()
Gets the current settings of the Classifier.java.io.File
getOutputFile()
Get the value of OutputFile.java.lang.String
getRevision()
Returns the revision string.java.lang.String
globalInfo()
Returns a string describing this result listenerboolean
isResultRequired(ResultProducer rp, java.lang.Object[] key)
Always says a result is required.java.util.Enumeration
listOptions()
Returns an enumeration describing the available options..java.lang.String
outputFileName()
Get the value of OutputFileName.java.lang.String
outputFileTipText()
Returns the tip text for this propertyvoid
postProcess(ResultProducer rp)
Perform any postprocessing.void
preProcess(ResultProducer rp)
Prepare for the results to be received.void
setOptions(java.lang.String[] options)
Parses a given list of options.void
setOutputFile(java.io.File newOutputFile)
Set the value of OutputFile.void
setOutputFileName(java.lang.String name)
Set the value of OutputFileName.
-
-
-
Method Detail
-
globalInfo
public java.lang.String globalInfo()
Returns a string describing this result listener- Returns:
- a description of the result listener suitable for displaying in the explorer/experimenter gui
-
listOptions
public java.util.Enumeration listOptions()
Returns an enumeration describing the available options..- Specified by:
listOptions
in interfaceOptionHandler
- Returns:
- an enumeration of all the available options.
-
setOptions
public void setOptions(java.lang.String[] options) throws java.lang.Exception
Parses a given list of options. Valid options are:-O <file name> The filename where output will be stored. Use - for stdout. (default temp file)
- Specified by:
setOptions
in interfaceOptionHandler
- 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 Classifier.- Specified by:
getOptions
in interfaceOptionHandler
- Returns:
- an array of strings suitable for passing to setOptions
-
outputFileTipText
public java.lang.String outputFileTipText()
Returns the tip text for this property- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
getOutputFile
public java.io.File getOutputFile()
Get the value of OutputFile.- Returns:
- Value of OutputFile.
-
setOutputFile
public void setOutputFile(java.io.File newOutputFile)
Set the value of OutputFile. Also sets the OutputFileName.- Parameters:
newOutputFile
- Value to assign to OutputFile.
-
outputFileName
public java.lang.String outputFileName()
Get the value of OutputFileName.- Returns:
- Value of OutputFile.
-
setOutputFileName
public void setOutputFileName(java.lang.String name)
Set the value of OutputFileName. Must be used AFTER setOutputFile.- Parameters:
name
- the name of OutputFile.
-
preProcess
public void preProcess(ResultProducer rp) throws java.lang.Exception
Prepare for the results to be received.- Specified by:
preProcess
in interfaceResultListener
- Parameters:
rp
- the ResultProducer that will generate the results- Throws:
java.lang.Exception
- if an error occurs during preprocessing.
-
postProcess
public void postProcess(ResultProducer rp) throws java.lang.Exception
Perform any postprocessing. When this method is called, it indicates that no more results will be sent that need to be grouped together in any way.- Specified by:
postProcess
in interfaceResultListener
- Parameters:
rp
- the ResultProducer that generated the results- Throws:
java.lang.Exception
- if an error occurs
-
determineColumnConstraints
public java.lang.String[] determineColumnConstraints(ResultProducer rp) throws java.lang.Exception
Determines if there are any constraints (imposed by the destination) on the result columns to be produced by resultProducers. Null should be returned if there are NO constraints, otherwise a list of column names should be returned as an array of Strings.- Specified by:
determineColumnConstraints
in interfaceResultListener
- Parameters:
rp
- the ResultProducer to which the constraints will apply- Returns:
- an array of column names to which resutltProducer's results will be restricted.
- Throws:
java.lang.Exception
- if an error occurs.
-
acceptResult
public void acceptResult(ResultProducer rp, java.lang.Object[] key, java.lang.Object[] result) throws java.lang.Exception
Just prints out each result as it is received.- Specified by:
acceptResult
in interfaceResultListener
- Parameters:
rp
- the ResultProducer that generated the resultkey
- The key for the results.result
- The actual results.- Throws:
java.lang.Exception
- if the result could not be accepted.
-
isResultRequired
public boolean isResultRequired(ResultProducer rp, java.lang.Object[] key) throws java.lang.Exception
Always says a result is required. If this is the first call, prints out the header for the csv output.- Specified by:
isResultRequired
in interfaceResultListener
- Parameters:
rp
- the ResultProducer wanting to generate the resultkey
- The key for which a result may be needed.- Returns:
- true if the result should be calculated.
- Throws:
java.lang.Exception
- if it could not be determined if the result is needed.
-
getRevision
public java.lang.String getRevision()
Returns the revision string.- Specified by:
getRevision
in interfaceRevisionHandler
- Returns:
- the revision
-
-