Class CSVSaver

All Implemented Interfaces:
Serializable, CapabilitiesHandler, CapabilitiesIgnorer, BatchConverter, FileSourcedConverter, IncrementalConverter, Saver, EnvironmentHandler, OptionHandler, RevisionHandler

Writes to a destination that is in CSV (comma-separated values) format. The column separator can be chosen (default is ',') as well as the value representing missing values (default is '?').

Valid options are:

 -F <separator>
  The field separator to be used.
  '\t' can be used as well.
  (default: ',')
 
 -M <str>
  The string representing a missing value.
  (default: ?)
 
 -N
  Don't write a header row.
 
 -decimal <num>
  The maximum number of digits to print after the decimal
  place for numeric values (default: 6)
 
 -i <the input file>
  The input file
 
 -o <the output file>
  The output file
 
Version:
$Revision: 10203 $
Author:
Stefan Mutter (mutter@cs.waikato.ac.nz)
See Also:
  • Constructor Details

    • CSVSaver

      public CSVSaver()
      Constructor.
  • Method Details

    • globalInfo

      public String globalInfo()
      Returns a string describing this Saver.
      Returns:
      a description of the Saver suitable for displaying in the explorer/experimenter gui
    • listOptions

      public Enumeration<Option> listOptions()
      Returns an enumeration describing the available options.
      Specified by:
      listOptions in interface OptionHandler
      Overrides:
      listOptions in class AbstractFileSaver
      Returns:
      an enumeration of all the available options.
    • setOptions

      public void setOptions(String[] options) throws Exception
      Valid options are:

       -F <separator>
        The field separator to be used.
        '\t' can be used as well.
        (default: ',')
       
       -M <str>
        The string representing a missing value.
        (default: ?)
       
       -N
        Don't write a header row.
       
       -decimal <num>
        The maximum number of digits to print after the decimal
        place for numeric values (default: 6)
       
       -i <the input file>
        The input file
       
       -o <the output file>
        The output file
       
      Specified by:
      setOptions in interface OptionHandler
      Overrides:
      setOptions in class AbstractFileSaver
      Parameters:
      options - the list of options as an array of strings
      Throws:
      Exception - if an option is not supported
    • getOptions

      public String[] getOptions()
      Gets the current settings of the Classifier.
      Specified by:
      getOptions in interface OptionHandler
      Overrides:
      getOptions in class AbstractFileSaver
      Returns:
      an array of strings suitable for passing to setOptions
    • noHeaderRowTipText

      public String noHeaderRowTipText()
      Returns the tip text for this property.
      Returns:
      tip text for this property suitable for displaying in the explorer/experimenter gui
    • setNoHeaderRow

      public void setNoHeaderRow(boolean b)
      Set whether to not write the header row
      Parameters:
      b - true if no header row is to be written
    • getNoHeaderRow

      public boolean getNoHeaderRow()
      Get whether to not write the header row
      Returns:
      true if no header row is to be written
    • setMaxDecimalPlaces

      public void setMaxDecimalPlaces(int maxDecimal)
      Set the maximum number of decimal places to print
      Parameters:
      maxDecimal - the maximum number of decimal places to print
    • getMaxDecimalPlaces

      public int getMaxDecimalPlaces()
      Get the maximum number of decimal places to print
      Returns:
      the maximum number of decimal places to print
    • maxDecimalPlacesTipText

      public String maxDecimalPlacesTipText()
      Returns the tip text for this property.
      Returns:
      tip text for this property suitable for displaying in the explorer/experimenter gui
    • setFieldSeparator

      public void setFieldSeparator(String value)
      Sets the character used as column separator.
      Parameters:
      value - the character to use
    • getFieldSeparator

      public String getFieldSeparator()
      Returns the character used as column separator.
      Returns:
      the character to use
    • fieldSeparatorTipText

      public String fieldSeparatorTipText()
      Returns the tip text for this property.
      Returns:
      tip text for this property suitable for displaying in the explorer/experimenter gui
    • setMissingValue

      public void setMissingValue(String value)
      Sets the placeholder for missing values.
      Parameters:
      value - the placeholder
    • getMissingValue

      public String getMissingValue()
      Returns the current placeholder for missing values.
      Returns:
      the placeholder
    • missingValueTipText

      public String missingValueTipText()
      Returns the tip text for this property.
      Returns:
      tip text for this property suitable for displaying in the explorer/experimenter gui
    • getFileDescription

      public String getFileDescription()
      Returns a description of the file type.
      Specified by:
      getFileDescription in interface FileSourcedConverter
      Specified by:
      getFileDescription in class AbstractFileSaver
      Returns:
      a short file description
    • resetOptions

      public void resetOptions()
      Resets the Saver.
      Overrides:
      resetOptions in class AbstractFileSaver
    • getCapabilities

      public Capabilities getCapabilities()
      Returns the Capabilities of this saver.
      Specified by:
      getCapabilities in interface CapabilitiesHandler
      Overrides:
      getCapabilities in class AbstractSaver
      Returns:
      the capabilities of this object
      See Also:
    • writeIncremental

      public void writeIncremental(Instance inst) throws IOException
      Saves an instances incrementally. Structure has to be set by using the setStructure() method or setInstances() method.
      Specified by:
      writeIncremental in interface Saver
      Overrides:
      writeIncremental in class AbstractSaver
      Parameters:
      inst - the instance to save
      Throws:
      IOException - throws IOEXception if an instance cannot be saved incrementally.
    • writeBatch

      public void writeBatch() throws IOException
      Writes a Batch of instances.
      Specified by:
      writeBatch in interface Saver
      Specified by:
      writeBatch in class AbstractSaver
      Throws:
      IOException - throws IOException if saving in batch mode is not possible
    • getRevision

      public String getRevision()
      Returns the revision string.
      Specified by:
      getRevision in interface RevisionHandler
      Returns:
      the revision
    • main

      public static void main(String[] args)
      Main method.
      Parameters:
      args - should contain the options of a Saver.